0

コードで JSON.Parse に問題があり、その理由を見つけることができません。2 つの ajax 関数を呼び出す関数があります。正常に動作していますが、2番目の応答を解析しようとすると、エラーが発生せずにコードが壊れ、本当の謎は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

を使用する$.ajaxdataType:"json"、応答はすでに解析されています。そして、解析しようとする理由はないようです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 に答える