Javascript 如何从extjs4中的存储中获取值

Javascript 如何从extjs4中的存储中获取值,javascript,extjs,extjs4,extjs-mvc,Javascript,Extjs,Extjs4,Extjs Mvc,我有一个从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.attributembobox')

  • 检查商店里有多少记录

    Ext.StoreMgr.lookup('product.attributembobox').data.items

  • 检查记录是否已正确解析

  • 服务器上的记录是什么

    Ext.StoreMgr.lookup('product.AttributeComboBox').data.items[0].raw
    
    如何将其转换为记录

    Ext.StoreMgr.lookup('product.AttributeComboBox').data.items[0].data
    
    console.log(productStore.findRecord('abbr','4'));
    

    你能给我们看更多的代码吗

    到目前为止,看起来还可以,但你必须检查商店是否已经创建,是否有所有记录,就像里奇说的那样

    要检查商店是否存在,我会这样做

    var productStore = Ext.getStore('product.AttributeComboBox');
    console.log(productStore );
    
    检查存储是否已加载

    console.log(productStore.getCount());
    
    查找记录

    Ext.StoreMgr.lookup('product.AttributeComboBox').data.items[0].data
    
    console.log(productStore.findRecord('abbr','4'));
    

    进行此查找时是否加载了存储?另外,作为提示,您可以使用findRecord()完成同样的任务,但只需少一行代码。您确定存储数据加载正确吗?如果在存储上运行count(),是否表示存在记录?此外,您可以只执行console.log(store)并检入firebug,以确定其中是否加载了任何数据。请将请求的响应正文发布到zend服务器,以便我们可以查看存储中的数据。