Extjs4 加载到存储后读取json值
我试图从数据库返回的json中读取值。但我无法做到这一点。它的给出是不确定的。 在Firebug中,它以以下格式提供正确的值 {“列”:[“B”、“C”、“D”、“E”、“F”、“G”], “数据”:[[1.253,0.54,2.54,8.245,0,0.253]] } 当我给出console.log(响应[0].DATA.B)时,它的给出未定义。 我尝试了警报(响应[0]。获取('B');这也是未定义的。 警惕(成功)是真的 有人能告诉我这里出了什么问题吗 提前谢谢。。 这是我正在使用的代码Extjs4 加载到存储后读取json值,extjs4,Extjs4,我试图从数据库返回的json中读取值。但我无法做到这一点。它的给出是不确定的。 在Firebug中,它以以下格式提供正确的值 {“列”:[“B”、“C”、“D”、“E”、“F”、“G”], “数据”:[[1.253,0.54,2.54,8.245,0,0.253]] } 当我给出console.log(响应[0].DATA.B)时,它的给出未定义。 我尝试了警报(响应[0]。获取('B');这也是未定义的。 警惕(成功)是真的 有人能告诉我这里出了什么问题吗 提前谢谢。。 这是我正在使用的代码
Ext.define('DBRec', {
extend: 'Ext.data.Model',
fields: [
{name:'A', type :'string'},
{name:'B', type:'string'},
{name:'C', type:'string'},
{name:'D', type:'string'},
{name:'E', type:'string'},
{name:'F', type:'string'},
{name:'G', type:'string'}
]
});
var DBRecStore=Ext.create('Ext.data.Store', {
model: 'DBRec',
proxy: {
type: 'ajax',
url : 'dbFunctions.cfc?method=getRec',
reader: {
type:'json',
root:'DATA',
fields: ['B', 'C', 'D', 'E', 'F', 'G']
}
}
});
function loadLimits()
{
DBRecStore.load({
params: {
reader: 'json',
returnFormat: 'JSON'
},
callback: function(response, options, success){
alert(DBRecStore.getCount());
if (DBRecStore.getCount() == '0') {
alert("no records found");
}
else
{
alert("records found");
console.log(response[0].DATA.B+" "+response[0].DATA.C);
}
}
});
}
如果您没有使用自己的读卡器(我看您没有),那么您的数据数组必须是对象数组,而不是数组数组数组
{“数据”:[{a:1.253,b:0.54,c:2.54,d:8.245,e:0,0.253}}
您不需要在存储中定义字段,它已经在模型中。Prodigy..那么我如何获得该数组的值呢?如果您不想更改传入数据,请使用您的阅读器。您可以扩展:我无法更改服务器响应。我试着给阅读器:{type:'json',root:'COLUMNS',record:'DATA',fields:['B','C','D','E','F','G']},但它仍然没有从db中提醒值。我创建了自己的阅读器,但它的给出类型错误:D未定义,但在firebug中,仍然在给出响应..不确定问题出在哪里代理:{type:'ajax',url:'dbFunctions.cfc?method=getRec',reader:new Ext.data.JsonReader({root:'COLUMNS',record:'data'}),字段:['B','C','D','E','F','G']}