2012-10-01 103 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