Extjs Sencha ext js更改列文本
我想在网格上调用reconfigure来更改列文本,如本例所示 然而,我想从一个与网格无关的外部控件来实现它 需要找到对网格的引用,因为当我将其传递到变量中时,调用reconfigure时会出现无方法错误 需要帮忙吗谢谢 编辑 如果您查看了文章中的链接,则此功能:Extjs Sencha ext js更改列文本,extjs,grid,Extjs,Grid,我想在网格上调用reconfigure来更改列文本,如本例所示 然而,我想从一个与网格无关的外部控件来实现它 需要找到对网格的引用,因为当我将其传递到变量中时,调用reconfigure时会出现无方法错误 需要帮忙吗谢谢 编辑 如果您查看了文章中的链接,则此功能: onShowOfficesClick: function(){ var grid = this.down('grid'); Ext.suspendLayouts(); grid.setTitle('Employees'); gr
onShowOfficesClick: function(){
var grid = this.down('grid');
Ext.suspendLayouts();
grid.setTitle('Employees');
grid.reconfigure(this.createOfficeStore()
显示如何重新配置网格
我想做的是从外部函数获取网格引用,不确定是否可能
这是我的一些代码
var Social_Environment_Grid = Ext.create('Ext.data.Store', {
转到以创建一个不相关的存储
然后是我想调用的一个单独的Jquery函数
Social_Environment_Grid.reconfigure(false, newColumArray)
但是我得到了一个错误,Social_Environment_Grid没有方法重新配置,所以我猜这不是正确的对象引用
希望这有意义
编辑固定的
修复它感谢大家的评论和回答这里是我的问题
var Panel1 = Ext.create('Ext.panel.Panel', {
layout: 'fit',
height: 400,
layout: {
type: 'vbox', // Arrange child items vertically
align: 'stretch', // Each takes up full width
padding: 5
},
items: [{ // Results grid specified as a config object with an xtype of 'grid'
xtype: 'grid',
id: 'Panelxx1',
columns: [
然后打电话
Ext.getCmp('Panelxx1').reconfigure(false,alternativeIndex);
我没有引用网格,也没有正确调用对象引用,感谢大家的帮助为了更新网格视图,必须对网格对象调用
重新配置
方法。也就是说,代码示例中的网格
变量
如中所述,此方法接受一个新存储作为其第一个参数,接受一个新列数组作为其第二个参数,两者都是可选的
因此,如果数据模型的字段发生更改,则必须使用更新的字段创建新的存储。如果您的存储基于模型,则可以首先使用静态方法(例如,My.Model.setFields(…)
)对其进行更新,然后使用此模型创建一个新存储,并将其传递给网格的重新配置
方法
如果数据字段没有更改,可以像在示例中一样跳过第一个参数,只为新列使用数组
现在,您的问题似乎是在要调用
reconfigure
的位置获取对网格对象的引用。实现这一点的方法有很多。最简单的一个方法(除了使用全局变量,这是绝对不应该做的),就是使用id
config选项为网格提供一个id,当需要网格时,可以使用Ext.getCmp(myGridId)
获取引用。在您的情况下,这可能不是最干净的,但是我们需要知道您想要调用重新配置
的上下文,以便提供更合适的建议。在Ext.grid.Panel.prototype
中有一个重新配置
方法,除非您(从原型中)明确删除它,最终使用的变量不是对网格面板的引用。。。你能给我们看一下你的代码吗,这样我们就可以知道出了什么问题了。谢谢你的回答,rixo,我在问题中添加了一些代码。你的代码没有真正意义。您声明的变量引用的是存储,而不是网格。感谢您指出这一点,我也将检查这一点