3

http://www.xyz.com/abc.jsonの形式のURLからデータを取得しようとしています。私は次の方法で$.ajaxメソッドを使用してこれを達成しようとしています。

    var json = (function () {
        var json = null;
        $.ajax({
            'async': false,
            'global': false,
            'url': "http://www.xyz.com/abc.json.",
            'dataType': "json",
            'success': function (data) {
                json = data;
            }
        });
        return json;
    })();

しかし、私はこれを実行させることができません。取得したデータをループして、特定の条件を確認する必要があります。これは、jsonデータに名前が付いていれば、$。getJSonを使用して簡単に実現できますが、ファイルの形式は次のとおりです。

    [{
        "name": "abc",
        "ID": 46 
    }]

そのため、使用する前に、効果的に変換してJavascriptオブジェクト変数に格納する必要があります。私がどこで間違っているのかについての提案はありますか?

4

2 に答える 2

1

dataその応答を json オブジェクトに変換するには{ }、それをラップしてから json パーサーに渡します。

function (data) {
  json = JSON.parse("{\"arr\":"+data+"}").arr;
}

次に、データを取得するには、次のようになります

json[0].name  //"abc"
于 2013-02-17T06:04:03.633 に答える
0

あなたの質問は、文字列を Json オブジェクトに変換する方法ですか? Jquery を使用している場合は、次のことができます。

jQuery.parseJSON( jsonString );

したがって、リターンは次のようになります。

return jQuery.parseJSON( json );

ここでドキュメントを読むことができます

于 2013-02-17T04:57:53.640 に答える