extjs - 如何在单击复选框后启用网格单元格值进行编辑
extjs - how to enable grid cell vaule to edit after clicking check box
如何仅在单击同一行中的复选框后才启用网格单元格编辑。
var simpsonPanel = Ext.create('Ext.grid.Panel', {
title: 'Simpsons',
//selType: 'checkboxmodel',
forceFit:true,
plugins: [
Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1
})],
store: Ext.data.StoreManager.lookup('simpsonsStore'),
columns: [
{
xtype: 'checkcolumn',
// text: 'Phase 9',
dataIndex:'Phase9',
listeners: {
checkChange: onCheckChange
}},
{ text: 'Name', dataIndex: 'name'},
{ text: 'Email', dataIndex: 'email' },
{ text: 'Phone', dataIndex: 'phone' }
],
height: 200,
width: 400
});
总代码https://fiddle.sencha.com/#fiddle/18c0.
单击复选框后,我需要启用名称单元格进行编辑。
如果未选中该复选框,则用户无法编辑名称单元格。
谢谢
您可以监听 beforeedit
事件和 return 是否允许编辑的标志。
Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1,
listeners: {
beforeedit: function(editor, event) {
return event.record.get('Phase9');
}
}
})]
在配置选项中,如果你输入 checkOnly: true
,那么只有当你点击复选框时它才会检查,否则它不会。
参见文档:http://docs.sencha.com/extjs/4.2.5/#!/api/Ext.selection.CheckboxModel-cfg-checkOnly
如何仅在单击同一行中的复选框后才启用网格单元格编辑。
var simpsonPanel = Ext.create('Ext.grid.Panel', {
title: 'Simpsons',
//selType: 'checkboxmodel',
forceFit:true,
plugins: [
Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1
})],
store: Ext.data.StoreManager.lookup('simpsonsStore'),
columns: [
{
xtype: 'checkcolumn',
// text: 'Phase 9',
dataIndex:'Phase9',
listeners: {
checkChange: onCheckChange
}},
{ text: 'Name', dataIndex: 'name'},
{ text: 'Email', dataIndex: 'email' },
{ text: 'Phone', dataIndex: 'phone' }
],
height: 200,
width: 400
});
总代码https://fiddle.sencha.com/#fiddle/18c0.
单击复选框后,我需要启用名称单元格进行编辑。 如果未选中该复选框,则用户无法编辑名称单元格。
谢谢
您可以监听 beforeedit
事件和 return 是否允许编辑的标志。
Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1,
listeners: {
beforeedit: function(editor, event) {
return event.record.get('Phase9');
}
}
})]
在配置选项中,如果你输入 checkOnly: true
,那么只有当你点击复选框时它才会检查,否则它不会。
参见文档:http://docs.sencha.com/extjs/4.2.5/#!/api/Ext.selection.CheckboxModel-cfg-checkOnly