-1

これは、C# JSON パーサーによって生成された私の JSON 文字列です。

{
    "NewDataSet": {
        "Table": [
            {
                "ResultId": "1",
                "AttachmentId": "1",
                "AttachmentName": "Report1",
                "RowsCount": "34",
                "NotifyUserName": "william",
                "InsBy": "developer",
                "InsAt": "2012-12-07T17:28:01.46+08:00",
                "IsNotify": "false"
            },
            {
                "ResultId": "2",
                "AttachmentId": "2",
                "AttachmentName": "Report2",
                "RowsCount": "37",
                "NotifyUserName": "william",
                "InsBy": "developer",
                "InsAt": "2012-12-07T17:28:15.57+08:00",
                "IsNotify": "false"
            },
            {
                "ResultId": "3",
                "AttachmentId": "3",
                "AttachmentName": "Report3",
                "RowsCount": "69",
                "NotifyUserName": "william",
                "InsBy": "developer",
                "InsAt": "2012-12-07T17:28:25.58+08:00",
                "IsNotify": "false"
            }
        ]
    }
}

次に、文字列を解析して JavaScript のフロント エンドに送り、値を繰り返します。私はこのようにしました。

  var jsonText;
        $.ajax({
            type: "POST",
            url: "Default.aspx/MethodWithNoParameterJSON",
            data: {},
            contentType: "application/json;charset=utf-8",
            dataType: "json",
            async: true,
            cache: false,
            success: function (msg) {
                //rulesName = dbtitle+msg.d;
                //rulesCount = +msg.d;
                jsonText = msg.d;
               alert(jsonText.NewDataSet.Table[0].ResultId), 
            },
            error: function (x, e) {
                alert("The call to the server side failed. " + x.responseText);
            }
        });

のような子要素データを取得するにはどうすればよいjsonText.NewDataSet.Table[0].ResultIdですか? を呼び出すたびにalert(jsonText.NewDataSet.Table[0].ResultId)、常に null または未定義のオブジェクトが表示されます。

4

2 に答える 2

1

なぜ変数msg.dの設定に使用しているのですか?物件jsonTextはどこから来たのですか?.dパラメータは、msgJSON応答から作成されたオブジェクトである必要があります。代わりにこれを試してください:

msg.NewDataSet.Table[0].ResultId

jsonText(変数の名前が間違っていることに注意してください。その時点であるのはJSONまたは「テキスト」ではなく、オブジェクトです。または、あなたの場合は未定義でundefinedあるためmsg.dです。しかし、オブジェクトとして使用しようとしています。 JSONとしてではありません。)

于 2012-12-08T02:43:45.683 に答える
0

打ち間違え?私はそれがすべきだと思います

jsonText.NewDataSet.Table[0].ResultId // replace RulesId with ResultId
于 2012-12-08T02:36:50.343 に答える