0

我的代码中的 JSON.Parse 有一些问题,我找不到原因我有一个调用两个 ajax 函数的函数,一个在开始,另一个在成功函数上。它工作正常,但是当我尝试解析第二个响应时,代码中断而没有给出任何错误,真正的谜团是没有JSON.parse(object);给出任何问题,但是当我使用变量来存储这样的结果时,我的代码坏var list =JSON.parse(object);了,我不知道什么这背后的原因是我当前的代码如下

function getData()
{
            $.ajax({
                type: "POST",
                url: "MyPage.aspx/GetData",
                data: JSON.stringify({ data: data})
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (response) {
                    var result = JSON.parse(response.d);
                    var temp = 0;
                    for (var i = 0; i < result.length; i++) {

                        if (result[i].data > 1) {
                            var subList = JSON.parsegetFullData (result[i].id));
                        }

                }
            });
}
     function getFullData (id) {
            var sublist;
            $.ajax({
                type: "POST",
                url: "MyPage.aspx/GetData2",
                data: JSON.stringify({ id: id }),
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (response) {
                    return response.d;
                }
            });

        }

任何想法都会有很大帮助

4

1 回答 1

2

当您使用$.ajaxwithdataType:"json"时,响应已经为您解析好了。而且似乎没有理由尝试 parse response.d

只需使用

$.ajax({
           type: "POST",
           url: "MyPage.aspx/GetData",
           data: JSON.stringify({ data: data})
           contentType: "application/json; charset=utf-8",
           dataType: "json",
           success: function (results) {
                for (var i = 0; i < results.length; i++) {
                    console.log(results[i].id, results[i].LastName);
于 2013-10-03T05:32:41.843 回答