#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. Спасибо, вы только что избавили меня от нескольких часов биения головой о стол. Знал, что это должно было быть чем-то, чего мне не хватало.