2012-06-25 7 views
0

Je dispose d'un fichier JSON et que vous souhaitez analyser la valeur de la seconde valeur variable (je veux obtenir la valeur « Ouvrir » dans ce fichier JSON ..fichier Parse JSON en titane

{ « menu »: { "id": "fichier", "valeur": "Fichier", "popup": { "menuitem": [{"value": "Nouveau", "onclick": "CreateNewDoc()"}, { "valeur": "Open", "onclick": "OpenDoc()"}, { "valeur": "Fermer", "onclick": "CloseDoc()"} ] } }}

I code utilisé suivre pour analyser mais c'est erreur:

for(var i in itemList) 
    { 
    var thisItem = itemList[i];    
    var itemList1=JSON.parse(thisItem.popup); 
    for(var j in itemList1) 
    { 
     var thisItem1=itemList1[0]; 
     label.text=thisItem1.value; 
    } 
    } 

Pouvez-vous m'aider.!

Répondre

2

Voici comment vous pouvez analyser le json. Démonstration de travail: http://jsfiddle.net/epinapala/B5J5C/3/

Le format de texte JSON est syntaxiquement identique au code de création d'objets JavaScript. S'il s'agit d'une réponse JSON de votre serveur, il n'est pas nécessaire d'analyser, vous pouvez accéder directement aux propriétés de l'objet.

var jsonObject = { 
    "menu":{ 
     "id":"file", 
     "value":"File", 
     "popup":{ 
     "menuitem":[ 
      { 
       "value":"New", 
       "onclick":"CreateNewDoc()" 
      }, 
      { 
       "value":"Open", 
       "onclick":"OpenDoc()" 
      }, 
      { 
       "value":"Close", 
       "onclick":"CloseDoc()" 
      } 
     ] 
     } 
    } 
}; 

alert(jsonObject.menu.popup.menuitem[1].value); 

Si vous traitez avec des chaînes Json à la place, utilisez JSON.parse pour récupérer l'objet, puis analyser à travers elle. Démo de travail: http://jsfiddle.net/epinapala/B5J5C/2/

var jsonText = '{"menu": { "id": "file", "value": "File", "popup": { "menuitem": [{"value": "New", "onclick": "CreateNewDoc()"},{"value": "Open", "onclick": "OpenDoc()"},{"value": "Close", "onclick": "CloseDoc()"} ] } }}'; 

    alert(JSON.parse(jsonText).menu.popup.menuitem[1].value); 

​ 
+0

Merci ... Ça marche! – user1478916

+0

Désolé.Je suis un nouvel utilisateur et je ne sais pas accepter la réponse/vote up comment.Peux-tu me dire. – user1478916