form表单提交和阻止

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <title> new document </title>
  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
  <style type="text/css"></style>
  <script type="text/javascript">
    //实例:submit按钮,结合onsubmit事件,验证和提交表单
    function checkForm(){
        //判断用户名和密码是否为空
        if(document.form1.username.value==""){
                window.alert("用户名不能为空");
                return false;
        }else if(document.form1.username.value.length<5 || document.form1.username.value.length>20){
                window.alert("用户名在5-20位");
                return false;
        }else if(document.form1.userpwd.value==""){
                window.alert("密码不能为空");
                return false;
        }else if(document.form1.userpwd.value.length<5 || document.form1.userpwd.value.length>20){
                window.alert("密码必须在5-20位");
                return false;
        }
    }
  </script>
 </head>
 <body>

 <form name="form1" method="get" action="login.php"    onsubmit="return checkForm()">
     用户名:<input type="text" name="username" />
     密码:<input type="password" name="userpwd" />
     <input type="submit" value="提交表单" />
</form>
 //单机以下的链接,不会跳转网址,因为默认动作被阻止了
 <a href="http://www.itcast.cn" onclick="return false">北京交通网</a>
 </body>
</html>

onsubmit="return checkForm()" 加return是事件返回事件,当返回值为false的时候会阻止表单提交。

事件返回值:

事件的返回值,会影响事件的默认动作。

如果事件的返回值为false,则阻止默认动作执行。

如果事件返回值为ture或空,则默认动作执行。

如果事件没有任何返回值,则默认动作执行。

受影响的事件有两个:onclickonsubmit

其他事件的返回值,不会影响默认动作。

onclick的返回值也会组织submit的提交。

原文地址:https://www.cnblogs.com/yangzailu/p/6108824.html