2014-03-25 67 views
-4

這裏是我的JSON數據如何從JSON數組中檢索數據?

{ 
"list":[{"rank":"1","fb_id":"12345","score":"3000"}, 
     {"rank":"2","fb_id":"12345","score":"2000"},  
     {"rank":"3","fb_id":"123456","score":"1000"}, 
     {"rank":"5","fb_id":"123456","score":"2500"}], 
     "roundscores":[{"score1":"1000","pos1":"3","score2":"2500","pos2":"5"}] 
} 

從這個數據,我需要使用Java腳本獲得score1

我的JS

$.ajax({ 
type: "POST", 
url: "ajaxClassifica2.jsp", 
data: "selectedLevel="+selectedLevel+"&fb_id="+123456, 
success: function(data) { 
     alert(data); 
     var jsonlist = data.list; 
     var jsonround = data.roundscores; 
     alert(jsonlist); 
     alert(jsonround); 
     var strBuild = ""; 
     $.each(jsonobj, function(index, names) 
     { 
       strBuild ="<ul class=\"livelli\">" 
          +" <div class=\"social\"> " 
          +" <a href=\"#\"><img src=\"images/ico_fb.png\"></a>" 
          +" <a href=\"#\"><img src=\"images/ico_tw.png\"></a>" 
          +" </div>" 
          +" <li><strong>Round 1:</strong> " + names.roundscores.score1 + "</li>" 
          +" <li><strong>Posizione:</strong> " + names.roundscores.pos1 + " </li>" 
          +" </ul>" 
          +" <ul class=\"livelli\">" 
          +" <div class=\"social\"> " 
          +" <a href=\"#\"><img src=\"images/ico_fb.png\"></a>" 
          +"  <a href=\"#\"><img src=\"images/ico_tw.png\"></a>" 
          +" </div>" 
          +" <li><strong>Round 2:</strong> " + names.roundscores.score2 + "</li>" 
          +" <li><strong>Posizione:</strong> " + names.roundscores.pos2 + "</li>" 
          +" </ul>"; 

     }); 
       } 
    }); 
+8

有幫助你嘗試自己做任何事 – Novocaine

+0

你應該發佈你的代碼,並讓每個人看到你做了什麼。 –

+0

是的,我試過 alert(data); var jsonlist = data.list; var jsonround = data.roundscores; 雖然警報數據我可以看到我的JSON數據 其餘的未定義 – Rohil

回答

3

您可以使用JSON.parse然後用普通的JavaScript命名訪問:

var obj = JSON.parse('{"list":[...]}'); 
obj.roundscores[0].score1 // 1000 

另外,如果你有沒有在JSON.parse API舊的瀏覽器時,您可以使用填充工具如JSON3

+0

它的工作..感謝很多.. :) – Rohil

+0

你能幫我打印一個HTML列表數組。 \t

  • POS
  • \t
  • 諾姆
  • \t
  • 本地人
  • Rohil

    2
    var json = '{ "list":[{"rank":"1","fb_id":"12345","score":"3000"},{"rank":"2","fb_id":"12345","score":"2000"},{"rank":"3","fb_id":"123456","score":"1000"},{"rank":"5","fb_id":"123456","score":"2500"}], "roundscores":[{"score1":"1000","pos1":"3","score2":"2500","pos2":"5"}] }'; 
    var obj = JSON.parse(json); 
    var score1 = obj.roundscores[0].score1); 
    
    +0

    感謝您的答覆。 :) – Rohil

    +0

    可以請你幫我打印一個html中的列表數組。

    • pos
    • nome
    • punti
    Rohil

    0

    免得假設你的JSON數據是變量「RAWDATA」。

    var jData = JSON.parse(rawData); 
    alert(jData.roundscores[0].score1); 
    
    0

    回顧這個例子可能是你

      var jsonText = '{"name":"Frodo","address":"Hobbiton, The Shire"}'; 
         var person = JSON.parse(jsonText); 
    
         alert(person.name);