用户名和密码的JavaScript验证

问题描述 投票:1回答:3

我工作的家庭作业,并已令人头大我的大脑试图找出如何做到以下几点:

  1. UNAME - 需要的东西输入(如果不是抛出错误),需要的字母数字至少有一个字母和一个字符(如果不是抛出错误),否则通过检查,并增加checkev计数器
  2. 密码 - 需要输入一些(如果不是引发错误),需要字符计数为大于或等于8个字符(如果不是引发错误),否则通过检查和递增计数器checkev

在这一点上,我不得不由没有进入触发原来的错误,但是,一旦我测试不符合字母,数字或8个字符,我没有得到预期的响应的第二种情况。

下面是我写到目前为止以及HTML中的JS的例子:

任何帮助,将在很大程度上感谢!先感谢您!

window.onload = init;
    function checkRegistration() {
        var checkev = 0;
        var uName = document.pageForm.userName.value;
        var alphaNum = /^[a-z0-9]+$/i;
        var password = document.pageForm.password.value;
        
       if (uName == "") {
            document.getElementById('userName').innerHTML = "A username is required.";
            checkev=0;
        } else if (uName.match != alphaNum)
            document.getElementById('userName').innerHTML = "Username must contain at least one letter and one number, no special characters.";
        {
            document.getElementById('userName').innerHTML = "";
            checkev++;
        }
        
        
        if (password == "") {
            document.getElementById('password').innerHTML = "A password is required.";
            checkev = 0;
        } else if (password.lenth >= 8)
            document.getElementById('password').innerHTML = "A password of at least 8 characters is required.";
        else {
            document.getElementById('password').innerHTML = "";
            checkev++;
        }
<!DOCTYPE html>
<html lang="en-US">

<head>
    <title>Invitation Page</title>
    <link rel="stylesheet" type="text/css" href="css/main.css" />
    <script src="js/registration.js"></script>
</head>
    <form name="pageForm">
        <form action="#">
            <label for="userName">Username:</label>
            <input type="text" name="userName" placeholder="Enter your Username" />
            <span class="error" id="userName"></span><br><br>
            <label for="Password">Password:
            </label>
            <input type="password" name="password" placeholder="Enter your Password" />
            <span class="error" id="password"></span><br><br>
            <input type="button" value="Submit" onclick="checkRegistration()">
            
            </form>
            </form>
javascript validation alphanumeric
3个回答
0
投票

1个错字和1个逻辑问题。

尝试password.length < 8


0
投票
 <input type="text" name="userName" id="userName" placeholder="Enter your Username" />

<input type="password" name="password" id="password" placeholder="Enter your Password" />

你错过id属性,当你使用getElementById()和好运...


-1
投票

不要硬编码您的验证只需使用V4F

检查出更多的细节https://v4f.js.org

import {Field, Schema} from "v4f";

export Schema({
  username: Field()
    .alpha()
    .min(1)
    .required(),
  password: Field()
    .min(8)
    .required()
});
© www.soinside.com 2019 - 2024. All rights reserved.