Невозможно использовать массив json_encoded, переданный обратно из PHP в функцию .ajax() в JQueryJquery

Программирование на jquery
Ответить Пред. темаСлед. тема
Гость
 Невозможно использовать массив json_encoded, переданный обратно из PHP в функцию .ajax() в JQuery

Сообщение Гость »


Я использую JQuery и PHP. Я исследовал это, и решения работали, когда я моделировал решение в jsfiddle. Но как только я помещаю это в свой код, он терпит неудачу. Я использую .ajax() для передачи переменных в PHP, и PHP успешно передает обратно массив в формате JSON_encoded. Моя проблема в том, что я не могу использовать объект ответа, хотя вижу его свойство, закодированное как объект JSON. Например, ошибки obj.element.

Приведенный ниже код работает с объектными данными, представляющими json_encoded($php_array), отправленными обратно из PHP (см. var data = ниже.)

функции решения() { вар решение = { правда, cfa: c.tf //(c.tf — константа и равна 10 000) }; $.ajax({ тип: «ПОСТ», URL: 'functions.php', данные: решение, успех: функция (данные) { console.log(данные); $.each(данные, функция(ключ, клапан){ console.log(ключ+":"+значение); }); }, ошибка: функция() { console.log("Ошибка возврата решения"); } }); } Код PHP:

if($_POST['a']) { $cfa = $_POST['cfa']; if($cfa > 0 && $cfa 0 && $cfa 0 && $cfa число_формата($cfa,0), "а" => числовой_формат($а,0), "u" => числовой формат($u,0), "c" => числовой формат($c,0)); эхо json_encode ($ аа); Console.log(data) показывает {"cfa":0,"a":0,"u":3,"c":0}, за которым следует то же самое, но с результатами function.php { "cfa":10 000, "a": 20 000, "u": 12 000, "c": 13 000}.

Мне нужно использовать буквы «a», «u» и «c». Но я получаю одну ошибку:

jquery.min.js:2 Uncaught TypeError: невозможно использовать оператор «in» для поиска «длины» в {"cfa":"0","a":"0","u": "0","c":"0"} в p (jquery.min.js:2:1104) Затем следуют четыре записи, все одинаковые

jquery.min.js:2 Uncaught TypeError: невозможно использовать оператор «in» для поиска «длины» в {"cfa":10,000, "a":20,000, "u":12,000,"c ":13,000} в p (jquery.min.js:2:1104) Примечание: это работает, если я устанавливаю var data = {"cfa":10,000,"a":20,000,"u":12,000,"c":13,000 и затем запускаю < code>data запустите его $.each .

$.each(данные, функция(ключ, клапан){ console.log(ключ+":"+значение); }); Что я могу делать не так?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Jquery»