Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.02.2016, 10:53
Интересующийся
Отправить личное сообщение для Nesquik Посмотреть профиль Найти все сообщения от Nesquik
 
Регистрация: 04.01.2014
Сообщений: 29

парсинг json
[{"key1" : "value1", "key2" : "value2"},{"key1" : "value1", "key2" : "value2"},{"key1" : "value1", "key2" : "value2"}]

<table>
   <thead>
      <tr>
         <th>caption for key1</th>
         <th>caption for key2</th>
      </tr>
   </thead>

   <tbody>
      <tr>
         <td>value of key1</td>
         <td>value of key2</td>
      </tr>
   </tbody>
</table>


как?! через eval? я могу распарсить json вида:
["item" : {"key1" : "value1", "key2" : "value2"}, "item" : {"key1" : "value1", "key2" : "value2"}, "item" : {"key1" : "value1", "key2" : "value2"}]


а с этим чего-то застрял

P.s. вроде разобрался, однако интересны ваши варианты решения.

Последний раз редактировалось Nesquik, 18.02.2016 в 11:07.
Ответить с цитированием
  #2 (permalink)  
Старый 18.02.2016, 10:59
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

Сообщение от Nesquik
как?! через eval? я могу распарсить json вида:
нет такого вида ... и для json есть стандартная функция JSON.parse( );
и Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.Здравствуйте!
Ответить с цитированием
  #3 (permalink)  
Старый 18.02.2016, 11:09
Интересующийся
Отправить личное сообщение для Nesquik Посмотреть профиль Найти все сообщения от Nesquik
 
Регистрация: 04.01.2014
Сообщений: 29

Цитата:
стандартная функция JSON.parse( );
ну я, конечно, имел ввиду возможность обращаться к ключу через key.value

$.each(data, function(index, obj)

obj.name
Ответить с цитированием
  #4 (permalink)  
Старый 18.02.2016, 11:54
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

Nesquik,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
  <script>
   $(function() {
    var data = '{"item1" : {"key1" : "value1", "key2" : "value2"}, "item2" : {"key1" : "value3", "key2" : "value4"}, "item3" : {"key1" : "value5", "key2" : "value6"}}';
    data = JSON.parse(data);
    $.each(Object.keys(data), function(i, item) {
        $("table tbody").append($("<tr/>").append($.map(Object.keys(data[item]), function(key) {
            return $("<td/>", {
                text: data[item][key]
            })
        })))
    })
});
  </script>
</head>

<body>


<table>
   <thead>
      <tr>
         <th>caption for key1</th>
         <th>caption for key2</th>
      </tr>
   </thead>

   <tbody>

   </tbody>
</table>

</body>

</html>
Ответить с цитированием
  #5 (permalink)  
Старый 18.02.2016, 13:08
Интересующийся
Отправить личное сообщение для Nesquik Посмотреть профиль Найти все сообщения от Nesquik
 
Регистрация: 04.01.2014
Сообщений: 29

Рони, спасибо, неплохое решение, единственное что если взять более общий случай (когда value из json мы вставляем как в td, так и куда-то еще).

у вас получилось слишком красиво
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Парсинг json с двойными кавычками llpoolerll jQuery 9 29.06.2016 17:28
Парсинг Json Sabir AJAX и COMET 1 27.01.2016 13:22
Парсинг JSON c # devastor Серверные языки и технологии 3 05.10.2014 16:51
Парсинг JSON на Node.js l0ck3R AJAX и COMET 2 12.11.2013 15:22
Парсинг JSON массива со скобками [ ] lightdesign jQuery 1 24.04.2011 15:35