在提交表单之前添加确认提醒

Add a confirmation alert before submitting a form

我有一个允许用户从数据库中删除一些数据的表单。

我想确认一下以防止意外删除。我想执行以下操作:

  1. 当按下提交时,弹出警告 "Are you sure?"
  2. 如果用户点击 "yes" 然后 运行 脚本
  3. 如果用户点击 "no" 则不要提交脚本。

如何做到这一点?

我已经添加了 onSubmit 警报,但它没有显示任何内容,它仍然提交表单。如何延迟表单的提交,使其仅在用户从警报中选择 "yes" 时才发生?

<form 
  method="POST"
  action="actions/remove-daily-recipient.php"
  onSubmit="alert('Are you sure you wish to delete?');"
>
  ...
</form>

停止默认行为,要求确认,然后提交表单:

var form1 = document.getElementById('form1');
form1.onsubmit = function(e){
   var form = this;
   e.preventDefault();
   if(confirm("Are you sure you wish to delete?"))
       form.submit();
}

JS Fiddle: http://jsfiddle.net/dq50e963/

在你的表单上,你可以试试像这样的 js 函数:

<form onsubmit="return submitResult();">

你的函数有类似的东西吗?

function submitResult() {
   if ( confirm("Are you sure you wish to delete?") == false ) {
      return false ;
   } else {
      return true ;
   }
}

我认为这将是一个好的开始。

而不是 alert,您必须在 form 中使用 confirmreturn,例如:

<form 
    method="post"
    onSubmit="return confirm('Are you sure you wish to delete?');">
...
</form>