我正在使用ExtJs 3.4并且我已经实现了以下Ajax请求。
Ext.Ajax.request({
method: 'GET',
loadMask: true,
scope: this,
url: "http://" + host + ":" + port + "/" + projectName + "/"
+ "SetDefaultValues",
success: function (response, request) {
Ext.MessageBox.alert('success', response.responseText);
var jsonData = Ext.util.JSON.decode(response.responseText);
console.log(jsonData);
Ext.Msg.alert('Status', String(jsonData.name));
},
failure: function (response, request) {
Ext.MessageBox.alert('failure', response.responseText);
},
params : {
selectedVCode : selVehicleCode,
selectedFromDate : selFromDate.format('Y-m-d')
}
});
我的Ajax响应是这样的。
{'defaultVal':[{ 'category' : '1', 'name' : 'Kamal Subhasingha' } , { 'category' : '2', 'name' : 'Namal Witharana' } , { 'category' : '3', 'name' : 'Yohan' } , { 'category' : '4', 'name' : 'Ahan Liyanage' } , { 'category' : '5', 'name' : 'Sampath Jayaweera' } , { 'category' : '6', 'name' : 'Saman' } ]}
我尝试从此数据集中检索字段。这是我的尝试。
success: function (response, request) {
Ext.MessageBox.alert('success', response.responseText);
var jsonData = Ext.util.JSON.decode(response.responseText);
console.log(jsonData);
Ext.Msg.alert('Status', String(jsonData.name));
}
这将打印在控制台中设置的jsonData。没关系。但它提供了'未定义'的警报。它说'String(jsonData.name)'未定义。
我的代码出了什么问题。
请帮我澄清这个问题。