使用jquery ui对话框确认表单提交的操作

时间:2010-03-10 21:31:08

标签: jquery confirm

我在页面上有多个表单,对于每个表单,我希望用户在表单提交之前进行确认。但是当用户确认提交时,如何让这个对话框知道用户在哪个表格中进行汇总?它需要自定义参数吗?感谢。

$("#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');
});

3 个答案:

答案 0 :(得分:17)

您可以将其存储在如下变量中:

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;
});

由于您刚刚使用此功能并立即离开页面,因此没有任何理由让它变得更复杂。

答案 1 :(得分:1)

或者怎么样

$(this.form).submit();

答案 2 :(得分:1)

根据Nick Craver的回答,你可以这样写:

$('.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;
});