1

我有一个带有两个按钮的表单(用 HTML 和 PHP 制作)。其中一个按钮只是保存表单(插入或更新),另一个按钮执行相同操作并发送电子邮件。

我有 jquery 模式,以便在每次按下按钮之一时确认提交操作。按下按钮后,会出现另一个模式,仅用于确认进程已终止且没有任何错误。

我的问题是,当我按下“保存”按钮(不发送电子邮件的那个)时,它会出现,然后在 1 秒后消失。它应该只在我按下按钮关闭时关闭。另一个按钮工作正常。

这是我正在使用的代码:

        $.modal({
            content: $('#' + modalErrorId),
            title: 'Informa\u00E7\u00E3o',
            maxWidth: 500,
            buttons: modalButtons,
            zIndex: 500,
        });

除此之外:

$.ajax( {
   type: "POST",
   url: form.attr('action'),
   data: form.serialize(),
   success: function( response ) {
   openModal('modalSuccessMessage');
   }
});
4

1 回答 1

0

好的,试试

$.ajax( {
   type: "POST",
   url: form.attr('action'),
   data: form.serialize(),
   success: function( response ) {
   openModal('modalSuccessMessage');
   }
});    
return false;

或者

e.preventDefault();
$.ajax( {
   type: "POST",
   url: form.attr('action'),
   data: form.serialize(),
   success: function( response ) {
   openModal('modalSuccessMessage');
   }
});

你可能有这样的代码,

$('#buttonid').on('click', function(e){
    // ajax call
});

或者

$('#formid').on('submit', function(e){
    // ajax call
});

如果我猜对了,原因是

模态出现后,表单以常规方式提交,导致页面刷新,因此正在刷新 DOM,因此模态消失。return falsee.preventDefault()阻止以常规方式提交表单。

于 2012-08-08T15:45:44.537 回答