2011-06-22 98 views
2

我有這樣的代碼如何迭代這個散列?

$.ajax({ 
    type: "GET", 
    url: "/cgi-bin/ajax.pl", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    data: { "id" : id }, 

    // ... 

    success: function(result){ 
    if (result.error) { 
     alert('result.error: ' + result.error); 
    } else { 
     printObject(result); 
    } 
    } 
}); 

其中printObject輸出

responseText: Content-Type: application/json; charset=utf-8 

{"276":"{\"var1\":[\"he\"],\"var2\":[\"he\",\"ki\",\"mt\"],\"var3\":\"07/06-2011\",\"var4\":[],\"var5\":\"ind\"}", ... 

問題

如何遍歷這個哈希?

每個數組應該只被視爲一個變量。 IE瀏覽器。 var2將是he,ki,mt

回答

2

您得到的結果應該已經被解析爲json,並且它在result對象中可用。只需執行result.276.var2即可獲取數組。

+0

當我得到'result'時,我不知道密鑰的名稱。如何迭代它?在perl中,它是'foreach my $ k(keys%hash){print「$ k $ hash {var2}」;}'但是這怎麼在JavaScript/JQuery中完成呢? –

+1

使用'$ .each'方法將結果作爲第一個參數傳遞。 –

+1

示例:http://stackoverflow.com/questions/1096924/iterating-a-javascript-objects-properties-using-jquery –