如何仅取消选择网格中的某些行?
Posted
技术标签:
【中文标题】如何仅取消选择网格中的某些行?【英文标题】:How to deselect only some rows in a grid? 【发布时间】:2019-07-18 17:14:27 【问题描述】:我有一个选中所有行的网格,有一个名为 CODE 的列,我只需要在单击 CODE 为 1 的按钮后取消选择这些行并选择其他行。
我已经尝试过 deselectAll();但这会取消选择网格中的所有行。
【问题讨论】:
我发现了如何使用 deselect(row);谢谢 【参考方案1】:您可以在selectionModel
上使用deselect
方法来删除项目的选择。您可以传递要取消选择的记录数组或记录索引。下面是示例代码。
Ext.define('User',
extend: 'Ext.data.Model',
fields: ['name', 'email', 'phone']
);
var userStore = Ext.create('Ext.data.Store',
model: 'User',
data: [
name: 'Lisa'
,
name: 'Bart'
,
name: 'Homer'
]
);
Ext.create('Ext.grid.Panel',
renderTo: Ext.getBody(),
store: userStore,
storeId: 'mystore',
width: 300,
height: 400,
title: 'Application Users',
listeners:
afterrender: function()
this.getSelectionModel().select(1, true);
,
tbar: [
xtype: 'button',
text: "Deselect",
handler: function()
this.up('grid').getSelectionModel().deselect(1); //deseleting record on 1st index
],
columns: [
text: 'Name',
width: 300,
sortable: false,
hideable: false,
dataIndex: 'name'
]
);
【讨论】:
以上是关于如何仅取消选择网格中的某些行?的主要内容,如果未能解决你的问题,请参考以下文章