Я использую плагин формы jQuery для привязки событий отправки для двух форм на одной странице, чтобы они были представлены для разделения PHP-скриптов, которые возвращают разметку для разделения div на страница.Поведение формы по умолчанию после jQuery forms.js ajaxSubmit выполняет
Одна из форм освежает следующий. Я использую «жить», так что каждый вид имеет свои события вновь переплет, когда он обновляется:
$(document).ready(function() {
/* Form 1 */
$('#frmSearch').live('submit', function() {
$(this).ajaxSubmit({
target: '#divResults',
url: 'search_div.php'
});
return false;
});
/* Form 2 */
$('#frmResults').live('submit', function() {
$(this).ajaxSubmit({
target: '#divLookup',
url: 'lookup_div.php',
});
return false;
});
});
До сих пор так хорошо. Каждая форма может быть представлена снова и снова с помощью ajax, и все привязки переходят от одного представления к другому.
Проблема возникает, когда я пытаюсь связать третью форму и запустить его отправить событие в опции «успех» второй формы:
/* Form 2 */
$('#frmResults').live('submit', function() {
$(this).ajaxSubmit({
target: '#divLookup',
url: 'lookup_div.php',
success: function(responseText){
$('#frmLookup').submit();
}
});
return false;
});
/* Form 3 */
$('#frmLookup').live('submit', function() {
$(this).ajaxSubmit({
target: '#divMappings',
url: 'mapped_items_div.php',
});
return false;
});
Когда я делаю это, ajaxSubmit успешно выполняет, но тогда также выполняется попытка отправки формы по умолчанию, что приводит к перезагрузке страницы. Обратите внимание, что я включаю «return false»; для подавления заявки по умолчанию для формы, но по какой-либо причине она все равно подчиняется.
Я обнаружил, что если я «привяжу» к событию «отправить» формы 3 в функции успеха формы 2 с теми же параметрами, что и «живые» для формы 3, отправка по умолчанию формы не выполняется. Однако это избыточно, и если я могу, я бы хотел избежать этого.
Как я могу подавить поведение формы 3 по умолчанию?