2010-11-17 4 views
1

Я несколько раз ударил эту проблему, и я всегда нашел работу, но на этот раз это было бы невозможно.Ошибка отправки формы после перезагрузки jQuery форума

Проблема в этом. У меня есть форма внутри DIV, и я отправляю форму с помощью jQuery AJAX, а затем перезагружаю форму с новыми добавленными данными (например, список элементов, с формой для добавления новых элементов в список). Элементы также добавляются в базу данных MySQL. Это прекрасно работает, однако, как только страница перезагружается, форма больше не передает данные скрипту.

Я предполагаю, что это связано с тем, что форма также перезагружается и не связана с функцией javascript (или что-то в этом роде). Я решил это раньше, переместив форму за пределы перезагрузки DIV, что действительно работает, но на этот раз это было непрактично, а мои формы - это кнопки, которые удаляют элементы списка в DIV.

Я собирался попробовать использовать ссылки, чтобы отправить скрытую форму, но я подумал, прежде чем прибегать к тому, что я могу использовать это как возможность учиться.

Так что мой вопрос: что я делал неправильно и как я могу его решить? Спасибо :)

Блестки *

ответ

3

Где вы справляетесь submit сейчас вроде этого:

$("#something").submit(function() { .... }); 

Используйте .live() вместо этого, как это:

$("#something").live("submit", function() { .... }); 

Когда вы $("selector").submit(...) Оно привязывает обработчик события submit событий, которые он нашел , затем (не те, которые добавлены позже, даже если они соответствуют селектору). .live() работает по-разному, слушая событие, чтобы пузыриться до document ... и поэтому он работает и над будущими элементами.

+1

святое дерьмо, это так просто ?! Ты герой! БЛАГОДАРЯ! – Sparkles

+0

+1 провел два часа, прежде чем отправиться в SO .... – sergtk

Смежные вопросы