У меня есть несколько форм на одной странице, и я хочу добавить диалог подтверждения ко всем из них, используя один и тот же код. Все они имеют класс подтверждения-формы, и заголовок диалогового окна подтверждения должен генерироваться динамически (что не работает в АТМ).
В html у меня есть диалоговое окно, которое скрывается при загрузке страницы, а затем отображается при вызове функции dialog('open')
.
Это то, что у меня сейчас, и оно просто не работает, диалог загружается, но как только вы нажимаете «Подтвердить», он многократно повторяет предложение else и не отправляет форму:
var deleteConfirmed = false;
$('form.confirm-form').submit(function(e) {
if ( ! deleteConfirmed)
{
e.preventDefault();
var title = $(this).find('input.action').val();
var $this = $(this);
console.log('title: ' + title);
$('#confirm-dialog').attr('title', title);
$('#confirm-dialog').dialog({
buttons : {
"Confirm" : function() {
deleteConfirmed = true;
$(this).dialog('close');
$this.submit();
},
"Cancel" : function() {
$(this).dialog('close');
}
}
});
$('#confirm-dialog').dialog('open');
}
else
{
$(this).submit();
deleteConfirmed = false;
}
});