2012-10-01 68 views
1

我有我的网格与此代码actioncolumn:ExtJS的actioncolumn渲染防止处理

this.columns = 
    [ 
     { 
      xtype: 'actioncolumn', 
      items: [{ 
       icon: '../Content/Images/Approve.png', 
       handler: function (grid, rowIndex, colIndex, node, e, record, rowNode) { 
        alert('test approve') 
       } 
      } 
      ...rest of the columns 

当我点击该图标,我得到了“测试批准”的消息,所以它按预期工作!

如果我波纹管加渲染的方法来禁用已批准行操作列:

  renderer: function (value, metadata, record) { 
       if (record.get('Approved') = 1) {       
        this.items[0].disabled = true 
       } else { 
        this.items[0].disabled = false;      
       } 
      } 

handler站上启用itens工作。看起来renderer函数正在阻止调用handler。我甚至试图在renderer里添加handler代码,但也没有成功。

任何想法为什么会发生这种情况?

回答

3

你在if语句中的条件语句,我假设你打算比较不分配。那可能是你的代码破坏

+0

删除此答案,请。 – plsgogame

+3

为什么要删除它?这是一个有效的观点,在'if'条件中有'='而不是'=='或'===',这种条件不应该如预期的那样工作。 – pilsetnieks