2012-04-18 53 views
0

我有一個AJAX數組返回JQUERY如下:JQUERY循環數組

enter image description here

我可以看到數組,如果我這樣做:

alert(data); 

我然後通過運行陣列JSON解碼如下:

var obj = JSON.parse(data); 

現在我需要能夠查看數組和a使用元素。我嘗試了幾種方法,但我無法看到鉤入元素 - 例如:jquery錯誤,因爲頁面沒有顯示。

這是我試過的方法之一:

obj.each(function(key, value) { 
    alert(key + ": " + value); 
} 

缺少的東西 - 任何幫助將非常感激。

THX

+0

http://stackoverflow.com/questions/3330099/jquery-question-about-looping-through-an-array 希望有所幫助。 – g13n 2012-04-18 05:57:24

+0

可能數據不是合法的JSON,所以'JSON.parse()'不處理它。調用'JSON.parse()'後,obj是什麼? – jfriend00 2012-04-18 05:57:45

+0

是你的權利數據不是JSON所以我已經放棄瞭解析()...也增加了});之後.each()和頁面現在顯示...但仍然無法訪問數組內容... hummmmmm – Adam 2012-04-18 06:07:18

回答

0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title></title> 
    <script src="Scripts/jquery-1.7.1.min.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
     $(document).ready(function() { 
      var data = '[{ "metatype": "descriptions", "pagename": "index", "metacontent": "testing1" }, { "metatype": "keywords", "pagename": "index", "metacontent": "testing2" }, { "metatype": "title", "pagename": "index", "metacontent": "testing3"}]'; 
      var obj = JSON.parse(data); 

      $.each(obj, function (i, entity) { 
       $('#result').append('<div>' + i + ": " + entity.metatype + ' ' + entity.pagename + ' ' + entity.metacontent + '</div>'); 
      }); 
     }); 
    </script> 
</head> 
<body> 
    <div id="result"> 
    </div> 
</body> 
</html> 

    enter code here 
+0

進行現場演示,請參閱此鏈接:http://jsfiddle.net/nanoquantumtech/yctna/ – Thulasiram 2012-04-25 14:32:48

+0

這個你期待什麼? – Thulasiram 2012-04-25 14:33:24