如何防止 JQuery 在弹出窗口中点击取消后执行

How to prevent JQuery from executing after hitting Cancel on popup?

本文关键字:取消后 执行 窗口 何防止 JQuery      更新时间:2023-09-26

我有一份表格需要提交。 点击提交后,我有一个javascript警报/确认,询问:您确定要提交订单吗?

如果用户单击"确定",我想执行 JQuery 方法。 但是如果他们点击"取消",我不想执行任何东西。 有没有办法做到这一点?这是如果他们点击"确定"我想提交的 JQuery:

<script>
$(document).ready(function() { 
$('#saving').click(function() { 
   // do something
}); 
});
</script>

我的按钮: 救

javascript 弹出窗口:

function askUserIfTheyAreSure() {
var check = confirm("Are you sure you want to submit the order?");
if(check == true) { 
  document.forms["myform"].submit();
}
}

我建议这样做:

<script>
$(document).ready(function() { 
$('#saving').click(function() { 
    if(confirm("Are you sure you want to submit the order?")){
        document.forms["myform"].submit();
    }else{
      return false;
   }
}); 

});
</script>

你的意思是,像这样?

<script type='text/javascript'>
  function askUserIfTheyAreSure(){
    var check = confirm('Are you sure you want to submit the order?');
    if(check == 1) { 
      // run you jQuery Function Here
    }
    else{
      // do something else
      return false;
    }
  }
  $(document).ready(function(){ 
  $('#saving').click(askUserIfTheyAreSure); 
</script>

真的,我会使用外部JavaScript,所以它是缓存的。

只需将"click"代码中的任何内容复制到"check==true"块中即可。如果用户单击取消,则不会执行它。

function askUserIfTheyAreSure() {
    var check = confirm("Are you sure you want to submit the order?");
    if(check == true) { 
        // do something begin
        // do something end
        document.forms["myform"].submit();
    }
}