Я посылаю на пост данных, чтобы получить JSon строку обратно:Ajax разбора JSON строку возвращает неопределенное,
Моя JSON строка:
{"error":false,"success":"Added Website","website_id":"12"}
Мой запрос Ajax:
$('.publsher_add_website').on("submit", function() {
show_loader();
$.ajax({
url: $(this).attr('action'),
type: $(this).attr('method'),
data: $(this).serialize(),
success: function(data) {
if (data.success == false) {
ajax_error(data.error);
hide_loader();
} else {
console.debug(data);
console.log(data.error);
console.log(data.success);
console.log(data.website_id);
location.href = site_url + "publisher/websites?added=" + data.website_id + "#modal-verify";
hide_loader();
}
},
error: function() {
hide_loader();
}
});
return false;
});
Теперь, когда я иду использовать возвращенные data
, все они не определены. Я использовал:
console.debug(data);
который возвращает строку JSON выше, но если я пытаюсь получить доступ к ним индивидуально:
data.error;
data.success;
data.website_id;
Они все возвращаются в undefined
Почему это? Как я могу это исправить?
Похоже, вы не используете 'dataType', так что вы можете попробовать делать' успех: функция (данные) {данные = JSON.parse (данные); 'как первое в функции' success'? –
Ahh. Глупая ошибка. Спасибо. –
Ответь сейчас. –