Синтаксис JSON с вызовом AJAX и jquery в каждом цикле

#php #jquery #json #ajax

#php #jquery #json #ajax

Вопрос:

У меня есть вызов AJAX, который возвращает данные из PHP

 echo json_encode( $json_response);
  

и результат следующий

[{«name»:»Sprouts…….}]

Затем я выполняю цикл с помощью JQUERY

 $.each($.parseJSON(data), function(i, obj) {
         var name = (obj.name);
         var address = (obj.address);        
        });
  

Это работает отлично, но я пытаюсь добавить к нему имя (дочернее), чтобы у меня могли быть другие дочерние элементы. Я использовал следующее

json_encode(array('storedata' => $json_response))

чтобы добавить имя storedata, которое возвращает

{«storedata»:[{«name»: «Ростки….

Я попытался выполнить цикл с

 $.each($.parseJSON(data.storedata), function(i, obj) {
             var name = (obj.name);
             var address = (obj.address);        
            });
  

но что-то не так с синтаксисом, потому что data.storedata не определено.

Каков правильный синтаксис и / или правильный способ сделать это. Спасибо вам за любую помощь.

Комментарии:

1. Не показывайте частичный код, за которым следует многоточие, напишите весь код, который имеет отношение к вопросу.

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

Ответ №1:

Проблема в том, что вы пытаетесь получить доступ storedata перед преобразованием строки в объект, поэтому вам нужно заменить $.parseJSON(data.storedata) на $.parseJSON(data).storedata :

 $.each($.parseJSON(data).storedata, function(i, obj) {
         var name = (obj.name);
         var address = (obj.address);        
        });
  

Комментарии:

1. Спасибо, вы только что избавили меня от нескольких часов биения головой о стол. Знал, что это должно было быть чем-то, чего мне не хватало.