$ .getJson () Проблема и возврат неопределенного значения - PullRequest
0 голосов
/ 28 июля 2010

У меня есть сценарий php, который создает объект JSON.

В моем jquery я использую этот код для вызова сценария php.

  $.getJSON("/st/std.php",
   function(data){
    alert(data);
       $("myspan").text(data);
   }
  );

Как получить данные изКод JSON, закодированный в php-файле. В форме Iam вводим некоторый код, который будет выполнять поиск ajax в php-файле. Это объект JSON, который создает его в php

.в текстовое поле должен быть выведен «AAA-ANAA». Он должен найти объект, закодированный в JSOn, и получить метку.

[{"label":"AAA-ANAA (PF)","value":"AAA"},
{"label":"AAB-ARRABURY (AU)","value":"AAB"},
{"label":"AAC-AL ARISH (EG)","value":"AAC"},
{"label":"AAE-ANNABA (DZ)","value":"AAE"}}

Ответы [ 3 ]

5 голосов
/ 13 ноября 2012

Убедитесь, что заголовок ответа включает:

Content-Type: application/json

, а не

Content-Type: application/json; charset=utf-8

В IE9 у меня был опыт, когда данные, возвращаемые с $.getJSON, составляли undefined,хотя на панели «Сеть» можно увидеть выполняемый запрос и тело ответа, содержащее желаемый JSON.

0 голосов
/ 28 июля 2010

Чтобы увидеть, что (объектный объект) на самом деле содержит, замените alert (data);with alert (data.toSource ());.

Допустим, ваша php-страница возвращает {"a": "value"}, затем $ ("myspan"). text (data.a);вставит «значение» в ваш диапазон.

Чтобы передать параметр, поместите его в строку запроса: "/st/std.php?param=value".

0 голосов
/ 28 июля 2010

Это ожидаемое поведение.$.getJSON автоматически вызывает $.parseJSON(response), прежде чем передать его вашему обратному вызову.Вы можете исследовать JSON с помощью Firebug или, если вы уже знаете формат вашего JSON, вы можете перемещаться по response, как по обычному объекту, например

$('span').text(response.child[2])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...