ExtJs-复选框选择模型,每行禁用复选框 [英] ExtJs - Checkbox selection model, disable checkbox per row
本文介绍了ExtJs-复选框选择模型,每行禁用复选框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个带有复选框选择模型的网格。
Ext.define('Mb.view.ship.OrdersGrid', {
extend: 'Ext.grid.Panel',
selType: 'checkboxmodel',
selModel: {
injectCheckbox: 0,
pruneRemoved: false
},
...
根据字段中的值,某些行不应该是可选的。
在普通列中,我可以用renderer
干预显示,用css(metadata.tdCls
)隐藏单元格内容,但对于自动生成的复选框列,我找不到方法来逐行禁用或隐藏复选框。
有人知道如何做到这一点吗?
推荐答案
只需使用网格的beforeselect
事件。返回FALSE,将不允许选择。选中the documentation。
Ext.define('Mb.view.ship.OrdersGrid', {
extend: 'Ext.grid.Panel',
selType: 'checkboxmodel',
selModel: {
injectCheckbox: 0,
pruneRemoved: false
},
listeners: {
beforeselect: function(grid, record, index, eOpts) {
if (record.get('yourProperty')) {//replace this with your logic.
return false;
}
}
}
..........
如果您真的想隐藏该复选框,您可以为您的网格行添加CSS类,并且可以使用它们来隐藏它们。检查this answer以获取解决方案。
这篇关于ExtJs-复选框选择模型,每行禁用复选框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文