在提交表单前,一般都会进行数据验证,可以选择在submit按钮上的onclick中验证,也可以在onsubmit中验证。
但是onclick比onsubmit更早的被触发。
onsubmit只能表单上使用,提交表单前会触发, onclick是按钮等控件使用, 用来触发点击事件。
提交过程
1、用户点击按钮 —->
2、触发onclick事件 —->
3、onclick返回true或未处理onclick —->
4、触发onsubmit事件 —->
5、onsubmit未处理或返回true ——>
6、提交表单.
onsubmit处理函数返回false,onclick函数返回false,都不会引起表单提交。
onsubmit
onsubmit:在表单提交之前调用
当用户单击了表单中的 Submit 按钮而提交一个表单时,就会调用这个事件句柄函数。注意,当调用方法Form.submit() 时,该处理器函数不会被调用。
如果 onsubmit 句柄返回 fasle,表单的元素就不会提交。如果该函数返回其他值或什么都没有返回,则表单会被提交。
html:
<form onsubmit="return prevent_exist()"></form>
function prevent_exist() {
//在这里面可以写判断语句
return false;
}
js:
object.οnsubmit=function(){myScript};
object.addEventListener(“submit”, myScript);
onclick
同理,只需要进行条件的判断,如果不符合就return false