Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.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
Javascript ExtJS4网格:重置列顺序按钮_Javascript_Extjs_Grid_Extjs4 - Fatal编程技术网

Javascript ExtJS4网格:重置列顺序按钮

Javascript ExtJS4网格:重置列顺序按钮,javascript,extjs,grid,extjs4,Javascript,Extjs,Grid,Extjs4,我正在使用一个包含几列数据的网格。我希望用户能够移动列(通过在网格上将enableColumnMove属性设置为true),但我还需要能够将列顺序重置为我启动网格时使用的顺序 在列的dataIndex属性创建后,没有方法更改它。有其他方法吗?您可以使用grid.reconfigure(null,grid.initialConfig.columns)将网格重置回其原始状态。第一个参数用于在网格上设置新存储,但如果将其保留为null/未定义,则网格存储将不受影响 请注意,对于锁定的轴网和具有嵌套列标

我正在使用一个包含几列数据的网格。我希望用户能够移动列(通过在网格上将enableColumnMove属性设置为true),但我还需要能够将列顺序重置为我启动网格时使用的顺序


在列的dataIndex属性创建后,没有方法更改它。有其他方法吗?

您可以使用
grid.reconfigure(null,grid.initialConfig.columns)
将网格重置回其原始状态。第一个参数用于在网格上设置新存储,但如果将其保留为null/未定义,则网格存储将不受影响


请注意,对于锁定的轴网和具有嵌套列标题的轴网,重新配置方法可能会产生意外的副作用。但是对于大多数网格,它应该可以正常工作。

您好,谢谢您回答我的问题。我厌倦了你的策略,但没有奏效,我可能错过了什么。您应该定义initialConfig还是自动定义?我可以通过控制器中的引用调用它,对吗?当您通过Ext.create创建网格时,应该自动定义initialConfig属性。如果有对网格的引用,则可以访问它。当你调用“重新配置”时会发生什么?当我调用它时似乎什么都没有发生。我仅使用Ext.create创建包含我的面板(包含我的网格)的视口。我在面板的initComponent:function()中将网格添加到面板中,代码为:initComponent:function(){this.items=[{xtype:'grid'}];this.callParent(arguments);},它仍然会在幕后调用Ext.create的一些变体。创建网格时,需要在config对象中有一个列定义。因此grid.initialConfig.columns应该始终存在。你有没有试过在调试器中检查你的网格,看看这个对象是什么样子的?我很难找到firebug来利用它。我想我只需将列设置为静态,以避免重置它们:/