我有一个网格面板,其中一些单元格是可编辑的,而另一些则不是。我想这样当你用键盘在网格中切换时,不可编辑的单元格会被跳过,即永远不会被选中。
到目前为止,这是我的简单网格:
var store = Ext.create('Ext.data.Store', {
fields:['name', 'age', 'country'],
data:[
{name:'Lisa', age:13, country: 'USA'},
{name:'Bart', age:75, country: 'France'},
{name:'Homer', age:32, country: 'Germany'},
{name:'Marge', age:56, country: 'Australia'}
]
});
var grid = Ext.create('Ext.grid.Panel', {
title: 'People',
store: store,
columns: [
{header: 'Name', dataIndex: 'name', flex: 1},
{header: 'Age', dataIndex: 'age', flex: 1, editor: 'numberfield'},
{header: 'Country', dataIndex: 'country', flex: 1, editor: 'textfield'},
],
selType: 'cellmodel',
plugins: [{
ptype: 'cellediting',
clicksToEdit: 2
}],
height: 150,
width: 200,
renderTo: Ext.getBody()
});
如您所见,第一列 (Name) 不可编辑,而第二列 (Age) 和第三列 (Country) 定义了编辑器。每当您使用键盘在网格中切换时,我希望跳过名称列。换句话说,我的意思是这种标签顺序:
COL1 | COL2 | COL3 |
-----------------------------
SKIP | 1 | 2 |
-----------------------------
SKIP | 3 | 4 |
-----------------------------
SKIP | 5 | 6 |
-----------------------------
我不知道在哪里可以注入这种自定义标签行为,但我无法想象这是不可能的。
这是我的代码的 JS 小提琴:http: //jsfiddle.net/qnXrp/