как добавить событие клика на ярлыке Extjs 4 - PullRequest
4 голосов
/ 15 сентября 2011

я пытаюсь добавить событие клика на ярлык в extjs4, но не работает

Ext.onReady(function() {

    var ResetLabel = new Ext.form.Label({
        id:'ResetLabel',
        text: 'click it',
        renderTo : document.body                                

    });
    alert(Ext.getCmp('ResetLabel').id);

    Ext.getCmp('ResetLabel').on('click',function(){

        alert("message");
    });

});

как добавить событие на ярлык?

Ответы [ 6 ]

5 голосов
/ 15 сентября 2011

этот код работает в Extjs 4

Ext.onReady(function() {

    var ResetLabel = new Ext.form.Label({
        id:'ResetLabel',
        text: 'click it',
        renderTo : document.body                                

    });
    alert(Ext.getCmp('ResetLabel').getEl());

    Ext.getCmp('ResetLabel').getEl().on('click',function(){

        alert("message");
    });

});
3 голосов
/ 13 августа 2013
{ xtype: 'label', listeners: { element: 'el', click: function () { alert(); } } }
3 голосов
/ 15 сентября 2011

попробуйте это:

Ext.onReady(function() { 

var ResetLabel = new Ext.form.Label({ 
    id:'ResetLabel', 
    text: 'click it', 

listeners: {
   click: function(){ 
           alert("message"); 
       }
},

    renderTo : document.body                                 

}); 

alert(Ext.getCmp('ResetLabel').id); 


}); 
1 голос
/ 03 декабря 2015

Я работаю над старой базой кода поверх ExtJS 3.4, и мне помогло следующее. Я думаю, это должно работать и для более высоких версий.

new Ext.form.Label({
   "html": "Halp!",
   "listeners": {

       /* We are going to assing the click event right after the element has rendered */
       "afterrender": function () {

           this.getEl().on( "click", function () {
               console.log( "Clicked!" );
           });
       }
    }
});
1 голос
/ 18 декабря 2014

Да у меня тоже не работает, перепробовал все примеры ...

проверьте, это сработало

    var ResetLabel = new Ext.form.Label({
        id:'ResetLabel',
        text: 'click it'

    });
    Ext.onReady(function() {
        Ext.getCmp('ResetLabel').getEl().on('click',function(){
            alert("message");
        });
    });

Я добавляю ResetLabel на панель.

0 голосов
/ 17 июня 2015

Мне нравится, короче, чтобы понять идею быстрее:

// Adding abcent label event through its dom-structure:
myLabel.getEl().on(
  "click",
  onClickMyLabel);
...