【发布时间】:2013-07-12 09:30:39
【问题描述】:
在我的 HTML 中,我有一个表单没有onsubmit 事件监听器:
<form action="contact.php" method="post" id="contact">
...
<input type="submit" value="Send" />
</form>
因此,每当我单击“发送”按钮时,表单总是会被发布。但是,我想先验证输入,所以我想附加一个事件侦听器并拦截帖子。这就是我将事件侦听器附加到表单的方式:
window.onload = function() {
function validate() {
return window.confirm("Confirm");
}
var form = document.getElementById("contact");
form.addEventListener("submit", validate);
}
在执行事件侦听器时,如果我采用上述方法,表单将始终发布!但是,如果我将validate() 函数设为全局并在<form> 标记中使用onsubmit="return validate();",则该表单只会按预期有条件地提交。
为什么添加上面的validate() 函数不起作用? false 返回值好像丢失了?
【问题讨论】:
标签: javascript forms javascript-events