如何从商店获取值在extjs4
问题描述:
我有一个商店,从zend服务器获取数据。我想获取商店记录以在我的表单上进行一些自定义设置。为了从商店获取数据,我使用下面的代码。如何从商店获取值在extjs4
var index = Ext.StoreMgr.lookup('product.AttributeComboBox').find('abbr',4);
var reco = Ext.StoreMgr.lookup('product.AttributeComboBox').getAt(index);
上面的代码片段不返回任何记录。请让我知道我错在哪里。
答
-
在调试器检查商店存在
Ext.StoreMgr.lookup( 'product.AttributeComboBox')
-
检查多少条记录在店里
Ext.StoreMgr .lookup('product.AttributeComboBox')。data.items
检查记录是否已正确解析
什么从服务器备案
Ext.StoreMgr.lookup('product.AttributeComboBox').data.items[0].raw
来到它是如何被转化为
Ext.StoreMgr.lookup('product.AttributeComboBox').data.items[0].data
答
你能告诉我们更多的代码记录?
到目前为止,似乎没问题,但您必须检查商店是否已创建,以及是否具有所有记录,就像RichH所说。
要检查存储库中存在,我会做
var productStore = Ext.getStore('product.AttributeComboBox');
console.log(productStore);
要检查商店被装载
console.log(productStore.getCount());
来查找记录
console.log(productStore.findRecord('abbr','4'));
是你的店装在这次查找的时间是?另外,就像提示一样,你可以使用findRecord()来完成同样的事情,但只需少一行代码。 – existdissolve
您确定您的商店数据正确加载?如果您在商店上运行count(),它是否表示有记录?此外,你可以做console.log(存储),并检查萤火虫,如果有任何数据加载在它确定。 – Rocket04
请将请求的响应正文发布到zend服务器,以便我们可以在商店中看到数据。 –