我有一个从 zend 服务器获取数据的商店。我想获取商店记录以对我的表单进行一些自定义。为了从商店获取数据,我使用下面的代码。
var index = Ext.StoreMgr.lookup('product.AttributeComboBox').find('abbr',4);
var reco = Ext.StoreMgr.lookup('product.AttributeComboBox').getAt(index);
上面的代码段不返回任何记录。请让我知道我错在哪里。
我有一个从 zend 服务器获取数据的商店。我想获取商店记录以对我的表单进行一些自定义。为了从商店获取数据,我使用下面的代码。
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'));