gpt4 book ai didi

javascript - 向密码验证 JavaScript 添加条件

转载 作者:行者123 更新时间:2023-11-29 10:43:35 26 4
gpt4 key购买 nike

我需要对此密码代码添加一些进一步的验证。我创建了一个 if 语句,如果任何条件失败,失败的条件将打印出相关消息。我尝试为以下内容添加验证:

  • 密码必须有 1 位数字 (0-9)
  • 密码必须有 1 个大写字母 (A-Z)
  • 密码必须有 1 个小写 (a-z)

Javascript 代码:

<script type="text/javascript">
function check_form() {
var passw = document.getElementById('password-input-0').value;
var passw2 = document.getElementById('password-input-1').value;
var letter = /[a-zA-Z]/;
var number = /[0-9]/;

if (passw.length < 6 || passw != passw2 || !letter.test(passw) || !number.test(passw)) {
if (passw.length < 6) {
alert("Please make sure password is longer than 6 characters.")
return false;
}
if (passw != passw2) {
alert("Please make sure passwords match.")
return false;
}
if (!letter.test(passw)) {
alert("Please make sure Password Includes an UpperCase and LowerCase character")
return false;
}
if (!number.test(passw)) {
alert("Please make sure Password Includes a Digit")
return false;
}

/*email test*/
var email = document.getElementById('email-input-0').value;
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test(email)) {
alert('Please provide a valid email address');
form.email.focus;
return false;
}


return true;
}
}
</script>

这段代码似乎不起作用,作为一个缺乏经验的 JS 程序员,我不确定为什么它不起作用。我离开了电子邮件验证只是为了确保修复不会干扰它。感谢阅读!

Fiddle

最佳答案

您的代码中存在一些问题。首先,您缺少几个 } 大括号 - 例如第一个主要 if 子句的末尾。

其次,字符检查有点错误 - 它在同一次检查中同时检查大写和小写字母,因此不应该有效的密码通过了。

我已经更新了 fiddle ,它现在包含正确的代码,解决了这两个问题:http://jsfiddle.net/3kPkQ/3/

function check_form()
{
var passw = document.getElementById('password-input-0').value;
var passw2 = document.getElementById('password-input-1').value;
var letter = /[a-z]/;
var upper =/[A-Z]/;
var number = /[0-9]/;

if(passw.length < 6 || passw != passw2 || !letter.test(passw) || !number.test(passw) || !upper.test(passw)) {
if(passw.length<6){
alert("Please make sure password is longer than 6 characters.")
return false;
}
if(passw != passw2){
alert("Please make sure passwords match.")
return false;
}
if(!letter.test(passw)){
alert("Please make sure password includes a lowercase letter.")
return false;
}
if(!number.test(passw)){
alert("Please make sure Password Includes a Digit")
return false;
}
if(!upper.test(passw)) {
alert("Please make sure password includes an uppercase letter.");
return false;
}
}

/*email test*/
var email = document.getElementById('email-input-0').value;
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test(email)) {
alert('Please provide a valid email address');
form.email.focus;
return false;
}


return true;
}

这应该有效 - 也修复了@faby 的回答中的第二个问题。

关于javascript - 向密码验证 JavaScript 添加条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24055785/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com