2013-06-27 2 views
0

У меня есть куча данных JSON, которые я хотел бы выводить на страницу. Я видел так много вариантов того, как это можно настроить (и может изменить его), я не уверен, что это лучший способ для того, что я делаю, но он проверяется в JSON linter.Looping через JSON с jQuery

{ 
    "data": { 

     "typeA": [ 
     { 
      "name":"Thing 1", 
      "link":"#" 
     }, 
     { 
      "name":"Thing 2", 
      "link":"#" 
     } 
     ], 

     "typeB": [ 
     { 
      "name":"Thing iii", 
      "link":"#" 
     } 
     ], 
     "typeC": [ 
     { 
      "name":"Thing iv", 
      "link":"#" 
     } 
     ] 

    } 
} 

Я попытался иметь этот JSON в своем собственном .js файле, но на самом деле было больше удачи, держа его в документе (это один-пейджера сайт в любом случае) - на «дополнительной удачи» Я Я имел это вид, работающий, когда у меня был только типA.

Позже в документе готовый У меня есть следующий jQuery - который, когда выполняется, сообщает мне, что данные не определены.

$.each(data, function(i, v) { 
    $('#output').append("<p><a href='" + v.link + "'>" + v.name + "</a></p>"); 
}); 

Уверен, что мне не хватает чего-то большого здесь! Я хотел бы следующее:

  1. Некоторые подсказки относительно того, что мне нужно сделать, чтобы получить эту работу на всех - и, в идеале, что я мог бы выход TypeA в #output и TypeB и typeC в других местах, как # output2
  2. Некоторые определения/термины к материалам или частям при игре здесь. Я действительно не знаю, чего я здесь не знаю, и мне бы хотелось еще больше почитать об этом!

Благодаря

+0

Это вопрос, который был задан вопрос о много на StackOverflow, но я считаю, что малейшее различие в структуре JSON делает другие примеры не работают для меня. Я также недостаточно знаком с JSON, чтобы иметь много удачи в Google! – ArleyM

+0

Откуда берутся данные? Остальная часть этого (пока) не имеет значения. Не могли бы вы предоставить [SSCCE] (http://sscce.org)? –

+0

Данные - это то, что я сделал - в основном как способ научиться JSON. Разметка, окружающая 40 записей или около того, скорее всего, сильно изменится. Кроме того, вот SSCCE (люблю аббревиатуру): http://jsfiddle.net/fdJHc/ У меня есть JSON в теге

0

Try Beloe код

$(json['data']).each(function (index, value) { 
     for (i in value) { 
      $(value[i]).each(function (i, v) { 
       alert(v['name']); 
       alert(v['link']); 
      }); 
     } 
    }) 

скрипку http://jsfiddle.net/xppxZ/1/