Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ExtJs-编辑时保持网格行处于选中状态_Extjs_Extjs4_Extjs4.1 - Fatal编程技术网

ExtJs-编辑时保持网格行处于选中状态

ExtJs-编辑时保持网格行处于选中状态,extjs,extjs4,extjs4.1,Extjs,Extjs4,Extjs4.1,我通过收听文本字段的change来更改网格中id列的值: oTextfieldName.on( 'change', function( oField, strValue ) { oStore.getAt( 0 ).setId( strValue ); } 但是,如果调用了setId(),则该行0的选择将被删除。我的应用依赖于所选行以保持选中状态 在编辑/更改该id列的同时,如何保持该行处于选中状态 编辑: 当使用store.sync()时,它会被选中 然而,我的商店却被搞得一团糟: 未

我通过收听文本字段的
change
来更改网格中
id
列的值:

oTextfieldName.on( 'change', function( oField, strValue ) {
   oStore.getAt( 0 ).setId( strValue );
}
但是,如果调用了
setId()
,则该行
0
的选择将被删除。我的应用依赖于所选行以保持选中状态

在编辑/更改该id列的同时,如何保持该行处于选中状态


编辑:

当使用
store.sync()
时,它会被选中

然而,我的商店却被搞得一团糟:

未捕获类型错误:对象函数(){
this.destroy=Ext.emptyFn;

}没有方法'indexOf'ext-dev.js:1253

您可以重新选择行吗

oTextfieldName.on( 'change', function( oField, strValue ) {
   oStore.getAt( 0 ).setId( strValue );
   yourGrid.getSelectionModel().select(0);
}
您还可以执行类似的操作来禁止触发选择事件

var suppressEvent = true;
yourGrid.getSelectionModel().select(rowIndex, null, suppressEvent);  
查看文档中的

这是一个简单的游戏。如果单击“测试”按钮,它将选择索引1处的行。

由于
sync()
导致了此错误,我现在使用的是这种糟糕的方法:

oSelectionModel.deselect( nIndex, true );        
oSelectionModel.select( nIndex, true );

更改后,我取消选择(幸运的是不可见),然后选择。至少可以用。

谢谢。我试过了,没用。我仍然不知道如何使编辑状态恢复正常。请参阅我的编辑。