![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| WebUser |
|
||||||||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 15.4.2007 Репутация: нет Всего: нет |
как только обновился до версии - version: 3.02 (07-MAR-2012) так сразу форма не стала работать, если вернутся обратно к предыдущей версии - version: 2.92 (22-NOV-2011), форма работает.
Ниже приведу отрывок из книги(HTML, JavaScript, PHP и MySQL. Джентльменский набор Web-мастера 3-е издание) по которой я делал саму форму. сразу скажу, что форма отказалась работать с новой версией когда я передаю данные таким образом
если убрать textarea, работает нормально, но файл при этом не загружается. А ведь весь смысл в том, что файл загружается только при <textarea> теперь браузер стал выдавать такую ошибку - parsererror - SyntaxError: JSON.parse: unexpected character Привожу отрывок из книги. Загрузка файлов на сервер Отличительной особенностью модуля jQuery Form является возможность отправки файлов на сервер без перезагрузки страницы. Загрузка файлов выполняется не с помощью технологии AJAX, а путем создания скрытого тега <iframe>. Однако следует учитывать, что если файл не выбран пользователем, то запрос будет сделан с помощью AJAX. Ответ сервера может быть в формате HTML, XML, JSON или в виде скрипта на JavaScript. В двух последних случаях код следует размещать внутри тега <textarea>: Код HTML:
Обратите внимание Ответ в формате XML не поддерживается браузером Safari. Рассмотрим загрузку файлов на примере. Создадим файл index.php, который будет передавать файл скрипту ajax.php и получать ответ сервера в различных форматах. Содержимое файла index.php Код HTML:
Содержимое файла ajax.php Код PHP:
скажите, какие изменения произошли в новой версии jQuery Form что теперь нельзя оборачивать код json внутри <textarea> ? Это сообщение отредактировал(а) WebUser - 11.3.2012, 03:35 |
||||||||
|
|||||||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
Вероятно, в jQuery исправили какую-то ошибку. Так как json, который выдается в обрамлении <textarea> - ни разу ни json
Возможно было бы логичнее в объекте, который выдается в случае ошибки, заводить какой-то флаг. По этому флагу помещать ответ в textareа уже на клиенте, javascript'ом. Еще один вариант
json_encode проконтролирует все некорректные символы, которые могут быть в получившейся строке. на Content-Type сам jQuery обращает не очень много внимания, хотя мне кажется так будет правильнее в исторической перспективе... -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |