-1

你能阻止我做这样的事情吗

{
    xtype : 'button',
    text  : 'Prikazi',
    handler : function(item,el){
       this.setDisabled(true);
       store.load(function(records, operation, success) {
           if(success){ this.up('button').setDisabled(false); }
       });
    }
}

问题:this.up('button')

4

1 回答 1

1

只需使用您传递的参数 -

因为“this”首先指的是按钮,而在回调中它指的是商店:

{
   xtype:  'button',
   text:   'Refresh',
   id:     'btn_refresh',
   handler: function(clicked_button, the_event) {

      clicked_button.setDisabled(true);

      store.load(function(records, operation, success) {
         if(success){
            clicked_button.setDisabled(false);
         }
      });

   }
}

使用商店的 beforeload 事件来控制按钮状态可能更优雅。

更新:更改了变量名称以使示例更加明显。

也许检查一次FireBugChrome 开发者工具

...如果它应该有帮助,请接受答案。

于 2013-02-21T02:47:38.320 回答