Javascript/Jquery:如何在表单提交完成之前阻止执行其他代码

Javascript/Jquery : how we can prevent execution of other code until form submission done

本文关键字:执行 代码 其他 Jquery 表单提交 Javascript      更新时间:2023-09-26
document.myForm.submit();
window.dialogArguments.close();

首先执行dialogArguments.close()行,最后执行document.myForm.submit()行。

我们如何才能停止interper执行其他代码行,直到替换完成?

像一样尝试

document.myForm.submit();
setTimeout(
    function() {
      window.dialogArguments.close();    },
 500);

为函数的延迟执行设置超时。或用作window.dialogArguments.close((的回调函数;

您不应该阻止代码的任何部分。只需要把你的代码放在正确的位置。

例如:

function deleteDocument(form) {
    if (confirm("Do you really want to delete the document?")) 
       form.submit();
       window.dialogArguments.close();
   }
<form action="deleteDocument.php" onsubmit="deleteDocument(this);return false;">
</form>
   <form onsubmit="do_something()">
     function do_something(){
      // Do your stuff here
     }

如果你像下面的代码一样放return,你可以通过从do_something((函数返回false来阻止表单提交。

    <form onsubmit="return do_something()">
     function do_something(){
    // Do your stuff here
    return true; // submit the form
    return false; // don't submit the form
   }