JavaScript表单提交 - 确认或取消提交对话框

问题描述 投票:153回答:4

对于一个带有警告的简单表单,询问字段是否填写正确,我需要一个执行此操作的函数:

  • 单击按钮时显示警告框,有两个选项: 如果单击“确定”,则提交表单 如果单击取消,则会关闭警报框,并可以调整并重新提交表单

我认为JavaScript确认可行,但我似乎无法弄清楚如何。

我现在的代码是:

function show_alert() {
  alert("xxxxxx");
}
<form>
  <input type="image" src="xxx" border="0" name="submit" onclick="show_alert();" alt="PayPal - The safer, easier way to pay online!" value="Submit">
</form>
javascript html forms submit confirm
4个回答
345
投票

一个简单的内联JavaScript确认就足够了:

<form onsubmit="return confirm('Do you really want to submit the form?');">

除非您正在进行验证,否则不需要外部函数,您可以执行以下操作:

<script>
function validate(form) {

    // validation code here ...


    if(!valid) {
        alert('Please correct the errors in the form!');
        return false;
    }
    else {
        return confirm('Do you really want to submit the form?');
    }
}
</script>
<form onsubmit="return validate(this);">

24
投票
function show_alert() {
  if(confirm("Do you really want to do this?"))
    document.forms[0].submit();
  else
    return false;
}

19
投票

您可以使用JS确认功能。

<form onSubmit="if(!confirm('Is the form filled out correctly?')){return false;}">
  <input type="submit" />
</form>

http://jsfiddle.net/jasongennaro/DBHEz/


1
投票

好的,只需将您的代码更改为以下内容:

<script>
function submit() {
   return confirm('Do you really want to submit the form?');
}
</script>

<form onsubmit="return submit(this);">
   <input type="image" src="xxx" border="0" name="submit" onclick="show_alert();"
      alt="PayPal - The safer, easier way to pay online!" value="Submit">
</form>

这也是运行中的代码,只是让它更容易看到它是如何工作的,只需运行下面的代码来查看结果:

function submitForm() {
  return confirm('Do you really want to submit the form?');
}
<form onsubmit="return submitForm(this);">
  <input type="text" border="0" name="submit" />
  <button value="submit">submit</button>
</form>
© www.soinside.com 2019 - 2024. All rights reserved.