0

ここに私のサンプルjsonデータがあります

{"Caption":"BBA Feedback Form ","Notes":"Fields marked with \u003cfont size=\"-2\"  color=\"#e30102\" face=\"Verdana\"\u003e (*) \u003c/font\u003e are  compulsory","Name":"Name\u003cfont size=\"-2\" color=\"#e30102\" face=\"Verdana\"\u003e * \u003c/font\u003e","Subject":"Subject\u003cfont size=\"-2\" color=\"#e30102\" face=\"Verdana\"\u003e * \u003c/font\u003e","Email":"Email Address\u003cfont size=\"-2\" color=\"#e30102\" face=\"Verdana\"\u003e * \u003c/font\u003e","Details":"Feedback\u003cfont size=\"-2\" color=\"#e30102\" face=\"Verdana\"\u003e& nbsp;* \u003c/font\u003e"}

jquery で解析し、ラベルを埋めたいと思います。以下の方法で試してみましたが、うまくいきませんでした。

    function LoadEnquiryData() {
    $.ajax({
        type: "POST",
        url: urlToHandler + "?ac=show",
        data: {},
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (data) {
            $("input[id*='enq_lblcaption']").val(data["Caption"])
            $("input[id*='enq_lblnotes']").val(data["Notes"])
            $("input[id*='enq_lblfield_name']").val(data["Name"])
            $("input[id*='enq_lblfield_subject']").val(data["Subject"])
            $("input[id*='enq_lblfield_email']").val(data["Email"])
            $("input[id*='txtEnqDetails']").val(data["Details"])
            $("input[id*='btnEnqSubmit']").val(data["SubmitVal"])

        },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert(textStatus);
        }
    });
}

それを解析する方法を教えてください。ありがとう

4

3 に答える 3

1

(どのようなエラーが発生するかなど)役立つように「機能しなかった」よりも少し多くを含めますが、あなたが持っているものから、私は何も間違って目立つものを見ません。jsonから、次の2つの方法でフィールドにアクセスできます。

1data["Caption"] つ目は、次のように、2つ目は次のようになります。Data.Caption

戻ってきたデータを確認して、提供したサンプルと一致することを確認します。それらのオブジェクトの配列を取得している可能性はありますか?データを返すサーバーコードがないとわかりません。

于 2012-12-19T15:01:53.373 に答える
1

datavariable が or でないことを確認しますnullundefined?

あなたの論理が正しいので、私はこれを言っています。また、data次の方法で取得する方法が 2 つあります。

data["Caption"]

また

data.Caption

(他の値についても同じことを行います)

しかし、それができないのは奇妙に思えます。私が言っていることをテストしたい場合は、ここにアクセスしてください:

http://jsfiddle.net/oscarj24/6NUNd/

そして、 is notまたはjsonの場合にのみ、問題なく解析される方法を見てください。datanullundefined


data最初に変数を印刷して、正しく機能しているconsole.log(data);かどうかを確認することをお勧めします。$.ajax callback


お役に立てれば :-)

于 2012-12-19T15:10:11.070 に答える
0
$("input[id*='enq_lblcaption']").val(data.Caption)
$("input[id*='enq_lblnotes']").val(data.Notes)
and so on...

残念ながら、これには parseJSON は必要ありません。私はすでに別の目的で使用していたので、ここに追加しました。上記のコードを編集しましたが、これで問題なく動作するはずです。

于 2012-12-19T15:00:54.837 に答える