Использование диалогового окна jquery ui для подтверждения действия по отправке формы
Вопрос
У меня есть несколько форм на странице, для каждой из них я хочу, чтобы пользователь подтвердил перед отправкой формы.но когда пользователь подтверждает отправку, как мне сообщить этому диалоговому окну, какую форму отправляет пользователь?Принимает ли он пользовательские параметры?Спасибо.
$("#dialog-confirm").dialog({
resizable: false,
height:140,
modal: true,
buttons: {
'Confirm submit': function() {
document.______???????_____.submit();
},
Cancel: function() {
$(this).dialog('close');
}
}
});
$('.allForms').submit(function(){
$('#dialog-confirm').dialog('open');
});
Решение
Вы можете сохранить его в такой переменной:
var currentForm;
$("#dialog-confirm").dialog({
resizable: false,
height:140,
modal: true,
buttons: {
'Confirm submit': function() {
currentForm.submit();
},
Cancel: function() {
$(this).dialog('close');
}
}
});
$('.allForms').submit(function(){
currentForm = this;
$('#dialog-confirm').dialog('open');
return false;
});
Поскольку вы просто используете это и сразу же покидаете страницу, нет реальной причины усложнять задачу.
Другие советы
Или как насчет
$(this.form).submit();
Основываясь на его ответе Ника Крейвера, вы можете написать это так:
$('.allForms').submit(function(){
currentForm = this;
$('#dialog-confirm').dialog({
resizable: false,
height:140,
modal: true,
buttons: {
'Confirm submit': function() {
currentForm.submit();
},
Cancel: function() {
$(this).dialog('close');
}
}
});
return false;
});
Не связан с StackOverflow