|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
||||||
Накопление HTTP заголовков (ajax)08.02.2014, 17:02. Показов 2105. Ответов 20
Метки нет (Все метки)
Доброго времени суток. Возникла проблема с накоплением заголовков или запросов (не уверен как правильно). Суть в следующем, есть простая форма с именем пользователя и имейлом. При помощи jQuery вытаскиваю данные из формы forma.serialize(); Потом отсылаю данные в обработчик php и очищаю форму. Беда в том, что если не перезагружая страницу еще раз заполнить форму и отправить данные, то они продублируются, при этом при каждом отправлении данных будет происходит инкрментирование данных. То-есть. Сначала отправиться user1, при след заполнении и отправке user2, user2, потом user3,user3,user2 . Метот отправки POST, асинхронный. Что делаю не так?
Совсем идей нет или может объяснил непонятно?
0
|
||||||
| 08.02.2014, 17:02 | |
|
Ответы с готовыми решениями:
20
Подмена заголовков в ajax Отловить возвращение из php скрипта http заголовков
|
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
| 08.02.2014, 17:11 | |
|
Строки 5,6,7 - это у вас типа очищение формы? Скажите, а вы действительно видите, что данные очищаются?
0
|
|
|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
|
| 08.02.2014, 17:16 [ТС] | |
|
5,6,7 - это получение данных из формы, а не очищение. И да, форма точно чистится.
0
|
|
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
| 08.02.2014, 17:26 | |
|
Тогда хорошо бы еще глянуть код хэндлера и функцию freeOrder_Success
А по поводу jQuery: 1. Синтаксис trim - $.trim( value ); или jQuery.trim( value ); Посему, у вас не удаляются лишние пробелы. 2. async: true - указывать не обязательно, т.к. это значение по умолчанию. 3. Нет смысла оборачивать в конструкцию DOM-Ready внутри этой же конструкции
0
|
|
|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
|||||||
| 08.02.2014, 17:33 [ТС] | |||||||
0
|
|||||||
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
| 08.02.2014, 17:44 | |
|
Во-первых, прошу прощение по поводу trim - раньше не работал, а сейчас я проверил и таки очищает.
Во-вторых, if(data != false) - не надо кавычки. А хэндлер - это обработчик php или другой серверный язык Добавлено через 6 минут И забыл добавить - а почему вы сразу не обернули весь код jQuery в DOM-Ready?
0
|
|
|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
|
| 08.02.2014, 17:54 [ТС] | |
|
в данном случае false - именно строка, а не логическое значение. Хендлер возвращает в данном случае именно такой ответ в качестве неудачного выполнения операции. Дело точно не в серверной части, там все работает как надо. Дело именно в том, что происходит именно повторное отправление данных. Нажав кнопку отправить, он отправит данные, а потом отправить еще несколько раз, в соответствии с тем, сколько раз я заполнял форму
0
|
|
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
| 08.02.2014, 17:57 | |
|
Значит дело в плагине modal и это уже практически наверняка, раз вы отмели ошибки в обработчике, а в JS грубых ошибок нет.
0
|
|
|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
|
| 08.02.2014, 18:00 [ТС] | |
|
А причем здесь модал? Это всего лишь bootstrap, который выводит сообщение об ошибке. Я его кстати тоже убирал, не помогло. Могу приложить скриншот запросов, может вы разберете.
0
|
|
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
| 08.02.2014, 18:07 | |
|
Я не художник, чтоб разбираться в изобразительном исскустве и скриншоты вряд ли помогут
А если у вас есть в инете эта страница, то возможно и помог бы.
0
|
|
|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
|||||||
| 08.02.2014, 18:14 [ТС] | |||||||
|
Есть, но там что называется костыль. Сделал синхронную передачу пока, это позволило предотвратить повторные отправки за счет того, что форма успевает очиститься перед повторной отправкой.
На первом скриншоте сам заголовок. На втором показано как происходит отправка. Первый блок- отправка в первый раз, второй блок - заполнил еще раз очищенную форму и отправил (ушло 2 запроса почему то), ну а 3ий - заполнил форму чистую 3ий раз и ушло 3 запроса. Почему так?
0
|
|||||||
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
| 08.02.2014, 18:16 | |
|
И могу предложить такой вариант: вы не прописываете форму сразу, держите ее где-нибудь подготовленную, а добавляйте только тогда, когда открывается модальное окно. И, естественно, полностью удаляйте, после завершения операции.
0
|
|
|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
|
| 08.02.2014, 18:19 [ТС] | |
|
Нет, форма сразу прописана банальным html. vladimirskymed.ru - там форма снизу. О ней речь. Если присмотреться, за модальным окном всплывает окошечко что форма не заполнена (если отправить запрос). Это как раз попытка повторной отправки. Почему она возникает, без понятия.
0
|
|
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
| 08.02.2014, 18:24 | |
|
Заголовки тут ни при чем, второй скрин - ничем не поможет. И да, синхронная передача может быть выходом, но я бы все-таки разобрался в чем дело. Я с бутстрапом не работаю, но предполагаю, что повторные отправки могут быть делом его "рук".
Добавлено через 1 минуту Ссылка битая
0
|
|
|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
|
| 08.02.2014, 18:28 [ТС] | |
|
http://vladimirskiymed.ru/ - Вот ссылка
0
|
|
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
| 08.02.2014, 18:32 | |
|
Не знаю, огорчу вас или обрадую, но у меня отправлялось по одному разу и никаких повторов небыло.
0
|
|
|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
|
| 08.02.2014, 18:38 [ТС] | |
|
Это как раз из-за того что там синхронная передача. Повторные попытки есть, но они не проходят, так как форма в этот момент уже пуста. А отправки не произойдет, так как поля не заполнены. Если хотите, могу на час включить синхронную передачу и сами убедитесь
0
|
|
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
| 08.02.2014, 18:40 | |
|
Ну, а зачем же мне смотреть на синхронную? Включите асинхрон.
0
|
|
|
0 / 0 / 0
Регистрация: 19.08.2013
Сообщений: 20
|
|
| 08.02.2014, 18:59 [ТС] | |
|
Включил, смотрите
0
|
|
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
||||||
| 08.02.2014, 19:22 | ||||||
Сообщение было отмечено Иван Самодуров как решение
Решение
Код в том файле, обязательно обернуть в DOM-Ready!!!
0
|
||||||
| 08.02.2014, 19:22 | |
|
Помогаю со студенческими работами здесь
20
Ajax http запрос с локалхоста
Запись заголовков HTTP клиентов Запись заголовков HTTP клиентов. Изменение заголовков запроса с http2 на http Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|