javascript - 表单仅使用javascript验证一个字段

标签 javascript forms validation

我正在尝试制作一个简单的注册表单,以确保在提交之前正确输入用户名和密码。这是我的表格:

<form id="register" name="register" action="" method="POST" onsubmit="return validate_account_creation(this)">

    <label> Username
        <input type="text" name="username" />
    </label>

    <label> Password
        <input type="text" name="password" />
    </label>            

    <input type="submit" name="submit" value="Submit" class="button"/>

</form>

这是我的 JavaScript 函数:

function validate_username(username) {
        var regex = /[a-zA-Z0-9\-\_]{5,15}/g;
        var str = username;

        if (!regex.test(str)) {
            alert("Your username must be between 5 and 15 characters in length");
            register.username.focus();
            return false;
        }
    }

function validate_password(password) {
        regex = /[a-zA-Z]{5,}[0-9]{1,}/g;
        str = password;

        if (!regex.test(str)) {
            alert("Your password must be at least 6 characters in length and must contain at least 1 number");
            register.password.focus();
            return false;
        }
    }


//Validate register form
function validate_account_creation(form) {



return validate_username(form.username.value);
return validate_password(form.password.value);

return true;

}

用户名函数工作正常,并且每次都会验证该用户名。但是,如果用户名正确,表单就会提交。第二个功能永远不会激活。如果第一个函数没有返回任何内容,那么是否应该调用第二个函数并验证第二个字段?

最佳答案

这是返回语句。 return 中止函数的其余部分并返回结果,因此您的验证应如下所示:

Javascript

function validate_account_creation(form) {

    var username = validate_username(form.username.value);
    var password = validate_password(form.password.value);

    return username && password; // if both are true, submit form

}

关于javascript - 表单仅使用javascript验证一个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27078255/

相关文章:

Javascript 多维数组键值对

javascript - 如何创建动态 html 表单的创建 JSON 对象(表单元素)?

ruby-on-rails - 如何将 Angular 表单保存到我的 ruby​​ on rails 后端?

c# - 验证 FinishButtonClick 上的所有向导步骤

javascript - 即时验证 EmberJS TextField?

javascript - BxSlider destroySlider() 函数不工作 : slider undefined or is not a function

javascript - 如何根据窗口大小动态调整图像大小?

javascript - spring Controller 无法从 $http Angular 检索数据

li 中的 HTML 表单,对 SEO 是好是坏还是中性?

validation - 我应该使用什么验证