0
<form name="myForm" action="demo_form.asp" onsubmit="return validateForm();" method="post">

为什么必须有一个returnbefore validateForm()

4

3 回答 3

2

如果您不使用return,Javascript 将调用validateForm但会丢弃返回值。

如果onsubmit返回false,则不会提交表单。

于 2012-07-19T20:15:42.310 回答
1

如果函数返回,<form>则可以停止默认的提交动作。onsubmitfalse

属性的值onsubmit被视为函数体,因此return需要它以便在表单无效时不提交表单。

于 2012-07-19T20:15:06.750 回答
0

基本上,该内联处理程序中发生的事情是这样的:

<button id="submit-button" type="submit" onclick="return validate()"></button>

var button = document.getElementById("submit-button");

button.onclick; // function () { return validate(); }

相对:

<button id="submit-button" type="submit" onclick="validate(event)"></button>

var button = document.getElementById("submit-button");

button.onclick; // equals function (event) { validate(event); }
于 2012-07-19T20:23:10.717 回答