我在我的extJS网格中使用Checkbox选择模型
selModel: {
selType: 'checkboxmodel',
},
我希望我的网格可以取消选择。
用例: 假设我单击一个按钮,任何选定的单元格都可以取消选择。 (背后有一些逻辑。)
感谢您的帮助。
答案 0 :(得分:1)
如果你想以编程方式取消选择,那么extJS中有一些名为deselect
Check Doc Here的选项
您可以像这样编写代码。
var gridSelction = grid.getSelection();
for(var i=0; i<gridSelction.length; i++){ // For MultiSelection
if(Your logic){
grid.selModel.deselect(gridSelction[i])
break;
}
}
答案 1 :(得分:0)
您必须使用mode
选择模型的checkboxmodel
配置。这样,当您选择新内容时,先前的选择将被取消选中。
文档:http://docs.sencha.com/extjs/6.2.1/classic/Ext.selection.CheckboxModel.html#cfg-mode
var store = Ext.create('Ext.data.Store', {
fields: ['name', 'email', 'phone'],
data: [{
name: 'Lisa',
email: 'lisa@simpsons.com',
phone: '555-111-1224'
}, {
name: 'Bart',
email: 'bart@simpsons.com',
phone: '555-222-1234'
}, {
name: 'Homer',
email: 'homer@simpsons.com',
phone: '555-222-1244'
}, {
name: 'Marge',
email: 'marge@simpsons.com',
phone: '555-222-1254'
}]
});
Ext.create('Ext.grid.Panel', {
title: 'Simpsons',
store: store,
columns: [{
text: 'Name',
dataIndex: 'name'
}, {
text: 'Email',
dataIndex: 'email',
flex: 1
}, {
text: 'Phone',
dataIndex: 'phone'
}],
height: 200,
width: 400,
renderTo: Ext.getBody(),
selModel: {
selType: 'checkboxmodel',
mode: 'SINGLE'
}
});