从ExtJs中的Ajax响应中检索字段

时间:2014-01-13 07:28:28

标签: javascript ajax json extjs

我正在使用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)'未定义。

我的代码出了什么问题。

请帮我澄清这个问题。

0 个答案:

没有答案