我真的很想有一个快速便捷的方法来遍历JSON中的多个记录,每个记录都有潜在的深层嵌套。我只想输出到表。
我不确定$ .each()或$ .ajax()成功的javascript方法需要通过function()传递哪些参数。所有示例似乎都使用通用词“ data”或“ obj”,但它们使我感到困惑-它们是内置函数参数还是我可以根据需要命名?
$.each(foo, function(bar){ });
以及如何跟踪循环/嵌套中的位置?
我更喜欢使用JQuery,但我也应该知道使用JavaScript的简单方法。我也想知道如果没有一百行代码是否有可能。
以这个JSON为例:
{ date: " 2012-10-18 16:58:35.104576", data: [{ title: "The Princess Bride", rating: "PG", length: 128, stars: [ "Gary Elwes", "Robin Wright", "Christopher Guest" ] }, { title: "This is Spinal Tap", rating: "R", length: 105, stars: [ "Christopher Guest", "Michael McKean", "Harry Shearer" ] }] }
即使在中,我也找不到包含嵌套JSON的任何有用示例。
遍历并将每个元素分配给表格单元的最有效方法是什么?HTML输出并不重要-我知道如何制作表格…如何获得“星星”?
当我使用Chrome控制台时,$.getJSON('/example');我只是简单地将整个JSON返回到responseText中,"{"date":"2012-10-18,"data": [{"title": "The Princess Bride",但是从JSON文档,$ .getJSON上的JQuery文档和任何JavaScript示例中都找不到对的引用responseText。所以,我迷路了。$.getJSON需要什么参数来使responseText对象化?
$.getJSON('/example');
"{"date":"2012-10-18,"data": [{"title": "The Princess Bride",
responseText
尝试
obj.data[0].stars // Will get you the stars in the 1st Object obj.data[0].stars[0] // Gary Elwes
小提琴
要遍历Stars对象,可以尝试以下操作
$.each(obj.data , function(key , value){ // First Level $.each(value.stars , function(k , v ){ // The contents inside stars console.log(v) }); });
更新场
编辑
$.ajax({ // Parameters success : function(obj){ $.each(obj.data , function(key , value){ // First Level $.each(value.stars , function(k , v ){ // The contents inside stars console.log(v) }); }); } });