【发布时间】:2015-02-18 10:02:37
【问题描述】:
我有一个检查列作为网格中的最后一列,一旦选中该复选框,我想禁用该行。
onCheckcolumnCheckChange: function(checkcolumn,rowIndex,checked){
//disable row code here
}
禁用意味着,用户不应该能够编辑该特定行的单元格。
感谢任何帮助。
谢谢
【问题讨论】:
我有一个检查列作为网格中的最后一列,一旦选中该复选框,我想禁用该行。
onCheckcolumnCheckChange: function(checkcolumn,rowIndex,checked){
//disable row code here
}
禁用意味着,用户不应该能够编辑该特定行的单元格。
感谢任何帮助。
谢谢
【问题讨论】:
仅仅切换到 RowEditing 并不能解决您的问题。您需要做什么,无论是哪种编辑,行或单元格,您都必须收听beforeedit event,并且在侦听器中您需要检查记录是启用还是禁用。如果它被禁用,那么您从侦听器返回 false:
伪代码:
beforeedit:function(editor, context) {
var disabled = context.record.get('disabled');
return !disabled;
}
【讨论】:
尝试为此使用 rowEditing
var rowEditing = Ext.create('Ext.grid.plugin.RowEditing', {
clicksToEdit: 2,
clicksToMoveEditor: 1,
listeners: {
'validateedit': function(editor, e) {},
'afteredit': function(editor, e) {
email_field.setReadOnly(true);}
}
});
查看this演示。
【讨论】: