Отправка JSON из PHP в JavaScript с помощью AJAX - PullRequest
0 голосов
/ 06 ноября 2010

Я бьюсь головой об стену и надеюсь, что кто-нибудь мне поможет.

У меня есть функция AJAX, которая вызывает страницу PHP. Эта страница возвращает объект JSON, который затем должен быть проанализирован и отображен для пользователя. Все работает нормально, за исключением случаев, когда возвращается объект JSON, при попытке анализа он дает неопределенное значение.

PHP:

$jsonArray= array(
                'request'  => 'this is the request',
                'response' => 'this is the response'
            );
echo json_encode($jsonArray);

На стороне Ajax я делаю следующее:

var display=xmlHttp.responseText;
alert(display); //gives {"request":"this is the request","response":"This is the response"}
alert(display.request); //gives undefined

Я что-то упускаю из виду? Кажется, что вставка той же строки непосредственно в переменную JavaScript работает нормально ...

Ответы [ 4 ]

2 голосов
/ 23 апреля 2014

Вам нужно будет проанализировать строку json.JSON.parse должен делать трюки.Если это не работает, возможно, существует проблема с закодированным объектом.

1 голос
/ 06 ноября 2010
var myObject = eval('(' + display + ')');
1 голос
/ 06 ноября 2010

Вам необходимо проанализировать данные JSON, возвращенные с вашего сервера.Для этого существует множество библиотек, таких как:

jQuery ,

0 голосов
/ 06 ноября 2010

display - это строка. вам нужно будет использовать

var obj = eval(display)

но eval () не так безопасен, как использование JSON.parse ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...