kangjacob 2021-08-06 13:06 采纳率: 96.8%
浏览 66
已结题

为什么返回了false还是会提交?


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>康健食疗诊所VIP用户登陆</title>
</head>
<body>

<br>
<br>
<form name="loginForm" method="get" action="testForm2.php" onsubmit="checkUser()">
   用户名:<input type="text" name="loginName"><br><br>
    密码: &nbsp  <input type="password" name="userPassword"><br><br>

    <input type="button" value="注册">
    <input type="submit" value="登陆" >
</form>
<script>
    function checkUser() {
        var userName=document.getElementsByName('loginName');
        var passWord=document.getElementsByName('userPassword');
        if (userName.value==null || passWord.value==null){
            alert('请先填写内容');
            return false;
        }
    }
</script>
</body>
</html>

能够弹出窗口提示需要填写,但是关闭窗口后仍然会提交并切换到ACTION的页面

  • 写回答

5条回答 默认 最新

  • CSDN专家-Fay 2021-08-06 13:07
    关注

    第一个问题
    onsubmit="checkUser()" 改成
    onsubmit="return checkUser()"
    少了个return

    第二个问题
    var userName =document.getElementsByName('loginName') 获取的 是对象数组,直接获取value获取不到
    改成
    var userName =document.getElementsByName('loginName')[0];
    var passWord=document.getElementsByName('userPassword')[0];

    第三个问题
    判断为空应该是if(userName.value==""||passWord.value==""){}

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 8月14日
  • 已采纳回答 8月6日
  • 创建了问题 8月6日