如何使用ExtJS访问从JsonStore获取的值?

时间:2013-05-15 08:07:36

标签: javascript extjs

在下面的JS代码中,我试图从url中读取json数据:

// Create JsonStore
var storeED = new Ext.data.JsonStore({                    
            url: './wfServlet?workd=' + workd
                + '&type=detail' + '&status=' + status +'&userName='+userName,
            root: 'root',
            fields: [{name:'ERROR_DESC'}]
            });

然后我想从字段ERROR_DESC中获取值。

Ext.getCmp('errorMessage').setValue(storeED.ERROR_DESC);// want  to read value

上面的代码对我不起作用。
 我错过了什么?

1 个答案:

答案 0 :(得分:2)

商店没有价值。存储是Ext.data.Model个实例的缓存,它们保存的值映射到为应用于商店的模型定义的字段。

要完成您要执行的操作,您需要访问商店中包含所需记录数据的模型实例,例如storeEd.getAt(0),假设您只有一个模型实例在商店的缓存中。

如果这是唯一的字段并且您只希望一个实例存在于此商店中,那么根本不打算使用商店可能会更好。您可以向模型本身添加代理,也可以只使用常规Ext.Ajax.request返回的值。如果您不打算在此特定用途之外使用此值,则可能不需要商店。