Невозможно использовать массив json_encoded, переданный обратно из PHP в функцию .ajax() в JQuery ⇐ 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(ключ+":"+значение); }); Что я могу делать не так?
Я использую 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(ключ+":"+значение); }); Что я могу делать не так?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Невозможно использовать константный вектор C++, переданный в функцию для find() [дубликат]
Anonymous » » в форуме C++ - 0 Ответы
- 10 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Неужели данных .NET Copy Copy Marry обратно и обратно, или он прикрепляет массив?
Anonymous » » в форуме C# - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Неужели данных .NET Copy Copy Marry обратно и обратно, или он прикрепляет массив?
Anonymous » » в форуме C++ - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-