Javascript boucle à travers une chaîne JSON
Ok, un peu de nouvelles au format JSON..
J'ai le JSON suivants chaîne renvoyée par un appel AJAX, qui firebug affiche réellement dans un arbre tout à fait bien.. mais je n'arrive pas à être en mesure de travailler sur la façon de faire une boucle par le contenu...
{"data":{"item":[{"@id":"7","fromMemberID":"7","FromMember":"david","notificationsType":"event","notificationsDesc":"A new event (Test Event Thursday, 16 September 2010) has been created.","notificationsDate":"16 Sep 2010","notificationsTime":"00:02:18"},{"@id":"8","fromMemberID":"7","FromMember":"david","notificationsType":"event","notificationsDesc":"A new event (Test Event Thursday, 16 September 2010) has been created.","notificationsDate":"16 Sep 2010","notificationsTime":"08:26:24"}]}}
J'ai essayé de dire obtenir un nombre d'éléments.. alert(data.de l'élément.la longueur);
ou une boucle:
for(i=0; i<data.item.length; i++)
{
alert(data.item[i].FromMember);
}
évidemment manque quelque chose regards croisés...
Des idées??
Avez-vous convertir la chaîne JSON JavaScript object?
lol il devrait y avoir un "nouveau commentaire a été posté de notification", comme il y a des réponses.
🙂 il est parfois difficile de décider de faire un commentaire ou une réponse
hehe, =) convenu.
lol il devrait y avoir un "nouveau commentaire a été posté de notification", comme il y a des réponses.
🙂 il est parfois difficile de décider de faire un commentaire ou une réponse
hehe, =) convenu.
OriginalL'auteur Dav.id | 2010-09-21
Vous devez vous connecter pour publier un commentaire.
Vous étiez très proche... "données" est en fait une clé dans votre JSON, alors vous devez vous référer à votre JSON variable pour un accès "data".... donc, vous voulez
JSON.data.item[i].FromMember
Voici de travail complète, code:
jsFiddle
OriginalL'auteur Peter Ajtai
L'objet JSON est un standard dans les nouveaux navigateurs. Pour les anciens navigateurs, vous pouvez ajouter de la bibliothèque javascript json2.js à partir de json.org (2,5 ko minimisé).
De transformer la chaîne de caractères d'un objet, utilisez
JSON.parse
Et à envoyer les données au serveur, utilisez
JSON.stringify
:OriginalL'auteur Mic
vous devriez avoir quelque chose comme ça pour que ça fonctionne. avis de la
obj
dans lefor-loop
.ou si vous avez
data
que votre variable, encore vous devez l'appeler commedata.data.item.length.
OriginalL'auteur Reigel
Assurez-vous d'utiliser dé-sérialiser le JSON.
Dépend des frameworks JavaScript que vous utilisez, chacun a sa propre de-sérialiseur.
L'exemple ci-dessus est l'aide de l'MicrosoftAjax.js de la bibliothèque.
Plus d'infos ici.
OriginalL'auteur RPM1984
Il suffit de passer votre json à la fonction ci-dessous.
Cliquez par exemple
OriginalL'auteur Q_Mlilo