2012-06-17 145 views
0

如何禁用特定的單元格編輯從XML數據文件?extjs禁用單元格編輯

這樣的:

<price disabled="true">9.37</price> 

請給我的例子提前 感謝

回答

2

首先,看你需要從XML響應屬性包括在模型中的字段具有mapping config來屬性,請參閱this post。你的情況是這樣的:

Ext.define('yourApp.model.Price', { 
    extend: 'Ext.data.Model', 
    fields: [ 
     {name: 'price',  type: 'float'}, 
     {name: 'disabled', type: 'boolean', mapping: 'price/@disabled'} 
    ] 
}); 

它已經一段時間,因爲我已經使用XML響應,所以你可能有玩弄這一點。

然後,您應該簡單地在您的網格面板的beforeedit事件中包含一個檢查,以防止在該記錄的disabled字段爲true時進行編輯。

如果您使用的是MVC模式,將是這樣的:

// controllers init function 
init: function() { 

    this.control({ 

     'yourgridpanel': { 

      // prevent disabled edits 
      beforeedit: function(plugin, edit) { 

       if (edit.record.get('disabled')) { 
        return false; 
       } 
      } 
     } 
    }); 
} 

如果不使用MVC模式的處理程序會去是這樣的:

yourGridPanel.on('beforeedit', function(plugin, edit) { 
    if (edit.record.get('disabled')) { 
     return false; 
    } 
}); 
相關問題