这两种表单提交方式有什么区别?
<form method="post" action="gert.php" onsubmit="return validate()">
<p>Enter an email address:</p>
<input id='email'>
<button type='submit' id='validate'>Validate!</button>
</form>
<form method="post" action="gert.php" onSubmit='validate(); return false;'>
<p>Enter an email address:</p>
<input id='email'>
<button type='submit' id='validate'>Validate!</button>
</form>
我在提交表单时使用第一个,如果表单未填写,则在 JavaScript validate()
函数中返回 false
。刚才在另一个网站上,我看到第二个正在使用。我无法弄清楚其中的区别,所以我想知道我是否仍在使用旧的方法来做这些事情,或者两者是否意味着相同的事情?我在想第二种方式,只有执行 thisform.submit
语句才会提交表单。我在执行表单时才知道这一点,但我仍然想知道两者之间的主要区别是什么?
最佳答案
仅当 validate()
的响应为 truthy 时,才会提交第一个示例。
第二个示例将验证表单(调用 validate()
),但它永远不会被提交,因为 falsy 值被发送回事件处理函数取消默认浏览器行为。
关于javascript - 两种表单提交方法的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8982776/