form标签提交时,会触发onsubmit事件。onsubmit会在提交之前发生,所以验证可以写在onsubmit中。
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> function check(){ if(document.getElementById("name").value==""){ alert("请完整输入!"); return false; }else{ return true } } </script> </head> <body> <form action="test.html" method="post" onsubmit="return check()"> <input type="text" id="name"/> <input type="submit" > </form> </body> </html>
我的理解是:
1.onsubmit相当于一个函数,默认是return true,会自动提交表单。我在form里面写的onsubmit=“return check()”相当于重写了onsubmit,如果return false则不会提交。
2.注意onsubmit=“return check()”中的return,不要忘记写了。