У меня есть проверка перед аякс запросом на заполненость полей. Запрос выполняется только если оба поля заполнены. Внутри запроса(где function(data)) у меня присутствует строка
$("#ajax_comment input[name=title], #ajax_comment textarea").val(""); ТОесть эта строка должна очистить содержимое полей, и при повторении они не пройдут проверку. Но, они проходят и повторяется запрос. Непонимаю(( Если разделить события на 2 отдельных события, то повторений не наблюдается. Но почему-же повторяются вложенные? |
такое ощущение что вот это событие добавляется каждый раз при добавлении комментария-а должно только один раз
поставь перед ним аlert $(".add").click(function(event) |
alert("До"); $(".add").click(function(event){ alert("После"); Так и есть. "До" выскакивает 1 раз только. "После" уже повторяется. Первый раз один раз, второй - два, третий - три и. т. д. Заметил что первый раз запрос обрабатывается дольше, успевает появиться бегущая строка. Остальные разы неуспевает и моментально выскакивает сообщение о успешном добавлении комментария. ПОлучается что кнопка формы как-то накапливает на себе события клика. Первый раз кликнули - выполнился обработчик. Второй раз кликнули - кнопка подумала что кликнули 2 раза и обработчик выполнился 2 раза и так далее. Интересно что не работает строка очистки содержимого формы внутри запроса. Я уже не знаю что предположить, но может эти события как-то параллельно стартуют? Ведь еслиб был цикл, то после очистки переменные получали бы пустые значения, а в них содержатся первоначальные данные. |
Цитата:
Цитата:
fadeOut(1500);эту форму удалять |
Полное удаление и создание формы вновь действительно решило проблему. Видимо вы были правы по поводу нескольких экземпляров. ПРавда в какой строке это происходит - так и осталось для меня загадкой.
|
Цитата:
|
Нет, алерт ДО срабатывает только 1 раз при клике и появлении формы. Несколько раз срабатывает алерт ПОСЛЕ. В принципе роблема уже решена, спасибо за подсказку с формами)
ПОследними строками я просто хотел сказать что интересно все-же почему так работал мой скрипт |
Часовой пояс GMT +3, время: 04:08. |