2012-11-28 41 views
0

我有一个商店并动态更改其URL。动态更改ExtJs 3.4中的商店数据

store_form.proxy.conn.url=url; 
store_form.load(); 
tabs.activate(1); 

所以,如果我更改URL,在存储数据要改变。

这家店我加载到FromPanel,它位于一个标签:

listeners: { 
    'activate' : function(zemform,records,options) { 
     console.log("store:"+store_form.getAt(0)); 
     this.loaded = true; 
     var record = store_form.getAt(0); 
     zemform.getForm().loadRecord(record); 
     //store_form.reload(); 
    } 
}, 

但该选项卡打开时,我看到以前的数据。只有当我点击另一个标签然后点击返回时,新数据才会显示。它出什么问题了?

回答

2

我不知道我的理解是否正确是问题,但我认为这个问题是activate处理程序。 只有在激活选项卡时才会触发它。你写这个标签已经打开了,所以它也被激活,在这种情况下,事件activate不会被触发。

取而代之的是,你应该叫loadRecord(record)在店里load处理程序:http://docs.sencha.com/ext-js/3-4/#!/api/Ext.data.Store-event-load

+0

that's正确。 – lontivero

+0

是的,它的作品。谢谢。 –