1

尝试从 json 响应中获取值时,我一直未定义:

//错误

{"NewDataSet":{"Table1":{"AUTONUM":"120"}}}

//代码

function DisplayAdvisorDetail() {
            $.ajax({
                type: "POST",
                url: "url",
                data: "{'ZipCode':'48038'}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (response) {
                    var adv = response.d;
                    $("#QuickenName").html(adv.AUTONUM);
                    alert(adv.AUTONUM);
                },
                failure: function (msg) {
                    alert(msg);
                }
            });
        }
4

3 回答 3

1

无论如何,您的 json 格式对我来说看起来不正确.. 您可以使用.运算符来获取响应对象的值

 var adv = response.NewDataSet.Table1;
  $("#QuickenName").html(adv.AUTONUM);
  alert(adv.AUTONUM);
于 2013-03-20T06:58:13.573 回答
0

这个:

var adv = response.d;

必须:

var adv = response.NewDataSet.Table1;

您的响应是获取 json,然后根据您获取的 json 对象添加对象.,在这种情况下,第一个对象NewDataSet就在其中Tabel1。进行此更改后,您肯定会在adv.AUTONUM.

于 2013-03-20T06:57:21.593 回答
-1

那么最好试试这个。

success: function (response) {
                    var adv = $.parseJSON(response.d);
                    $("#QuickenName").html(adv.Table1[0].QuickenName);
                    alert(adv.Table1[0].AUTONUM);
                },
于 2013-03-20T07:02:10.277 回答