JQuery Parsing JSON array

j'ai un JSON sortie comme suit:

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

je veux obtenir chacun des noms de ville, comment puis-je faire cela?

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

});

EDIT:

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

ce qui précède ne semble pas fonctionner, aucune valeur n'est émise.

26
demandé sur Barlas Apaydin 2012-05-05 19:11:19

5 réponses

getJSON() vous allez aussi analyser le JSON pour vous après avoir récupéré, donc à partir de là, vous travaillez avec un tableau Javascript simple ( [] marque un tableau dans JSON). La documentation contient également des exemples sur la façon de traiter les données récupérées.

vous pouvez obtenir toutes les valeurs dans un tableau en utilisant un for boucle :

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

Vérifiez votre console pour voir la sortie ( Chrome , Firefox/Firebug , IE ).

jQuery fournit aussi $.each() pour les itérations, donc vous pouvez aussi faire ceci:

$.getJSON("url_with_json_here", function(data){
    $.each(data, function (index, value) {
        console.log(value);
    });
});
49
répondu kapa 2017-05-23 12:26:10

utiliser la parseJSON méthode :

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

Alors vous avez un tableau avec les noms de ville.

29
répondu Guffa 2012-05-05 15:14:26
var dataArray = [];
var obj = jQuery.parseJSON(yourInput);

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

cela m'aide beaucoup :-)

7
répondu Andrej BlackFlash 2013-03-03 20:28:58
var dataArray = [];
var obj = jQuery.parseJSON(response);
  for( key in obj ) 
  dataArray.push([key.toString(), obj [key]]);
};
0
répondu Mohammed Amine 2013-01-30 10:01:11

avec parse.JSON

var obj = jQuery.parseJSON( '{ "name": "John" }' );
alert( obj.name === "John" );
0
répondu tailor 2014-03-28 04:28:46