28

次のようなJSON出力があります。

["City1","City2","City3"]

各都市名を取得したいのですが、どうすればよいですか?

$.getJSON("url_with_json_here",function(json){

});

編集:

$.getJSON('url_here', function(data){
    $.each(data, function (index, value) {
      $('#results').append('<p>'+value+'</p>');
        console.log(value);
    });
});

上記は機能していないようで、値は出力されません。

4

5 に答える 5

55

getJSON()フェッチ後にJSONも解析するため、それ以降は単純なJavascript配列([]JSONの配列をマーク)で作業しています。ドキュメントには、フェッチされたデータの処理方法の例も含まれています。

loopを使用してfor、配列内のすべての値を取得できます。

$.getJSON("url_with_json_here", function(data){
    for (var i = 0, len = data.length; i < len; i++) {
        console.log(data[i]);
    }
});

コンソールで出力を確認してください ( ChromeFirefox/FirebugIE )。

jQuery は$.each()反復も提供するため、次のようにすることもできます。

$.getJSON("url_with_json_here", function(data){
    $.each(data, function (index, value) {
        console.log(value);
    });
});
于 2012-05-05T15:22:09.730 に答える
31

parseJSONメソッドを使用します。

var json = '["City1","City2","City3"]';
var arr = $.parseJSON(json);

次に、都市名の配列があります。

于 2012-05-05T15:14:26.707 に答える
8
var dataArray = [];
var obj = jQuery.parseJSON(yourInput);

$.each(obj, function (index, value) {
    dataArray.push([value["yourID"].toString(), value["yourValue"] ]);
});

これは私を大いに助けます:-)

于 2013-03-03T20:09:38.690 に答える
1
var dataArray = [];
var obj = jQuery.parseJSON(response);
  for( key in obj ) 
  dataArray.push([key.toString(), obj [key]]);
};
于 2013-01-30T09:41:08.760 に答える
1

parse.JSON

var obj = jQuery.parseJSON( '{ "name": "John" }' );
alert( obj.name === "John" );
于 2013-10-31T10:13:28.267 に答える