Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery模式使用AJAX自动关闭_Ajax_Jquery - Fatal编程技术网

Jquery模式使用AJAX自动关闭

Jquery模式使用AJAX自动关闭,ajax,jquery,Ajax,Jquery,我有一个用HTML和PHP制作的表单,有两个按钮。其中一个按钮只需保存表单插入或更新,另一个按钮执行相同的操作并发送电子邮件 我使用jquery模式,以便在每次按下其中一个按钮时确认提交操作。按下按钮后,会出现另一个模式,该模式仅用于确认进程已在没有任何错误的情况下终止 我的问题是,当我按下“保存”按钮时,不发送电子邮件的邮件会出现,然后仅在1秒钟后消失。应该只有当我按下按钮关闭时它才会关闭。另一个按钮工作正常 这是我正在使用的代码: $.modal({

我有一个用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');
   }
});
好的,两个都试试

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

你可能有这样的代码

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

如果我猜对了,原因是


模态出现后,表单以常规方式提交,这导致刷新页面,因此DOM被刷新,因此模态消失。返回false或e.preventDefault阻止以常规方式提交表单

然后模态一出现就触发另一个事件,你能发布整个代码吗?模态出现后没有触发事件。ajax代码调用OpenModel函数作为第一个代码块,而没有调用其他任何东西=\尽管这两个代码段还不够,但您看过控制台了吗?但我猜您的代码中可能缺少return false或e.prevent默认行。事实上,我在任何地方都没有这些代码。那应该在哪里?还是没用!!我认为问题不在于缺少假报税表。正如我之前所说,当我按下另一个按钮时,也就是发送电子邮件的按钮,它工作正常。两个按钮之间的唯一区别是电子邮件发送。另外,当模式消失时,当我再次单击按钮时,隐藏的模式出现在新模式的后面@Psyvenon最好发布整个代码,否则无法确定问题所在。
$('#buttonid').on('click', function(e){
    // ajax call
});
$('#formid').on('submit', function(e){
    // ajax call
});