尝试验证用户名和密码,但即使用户名和密码正确,我也会收到错误消息。我得到一个TypeError,我做错了什么?我使用的是 String 方法吗?
function validateLogin() {
let passwordInput = document.getElementById('password');
let userName = document.getElementById('userName');
event.preventDefault();
// Set errors to an empty array
let errors = [];
// Conditions for password validation
if(passwordInput.length < 8) {
errors.push('Your password must be at least 8 characters long')
}
if(passwordInput.search(/[a-z]/) < 0) {
errors.push('Your password must cotain at least one lowercase letter')
}
if(passwordInput.search(/[A-Z]/) < 0) {
errors.push('Your password must conatin at least one uppercase letter')
}
if(passwordInput.search(/[0-9]/) < 0) {
errors.push('Password must contain at least one number!')
}
if(passwordInput.search(/[\!\@\#\$\%\^\&\*\(\)\_\+\.\,\;\:\-]/) < 0) {
errors.push("Your password must contain at least one special character.")
}
// Login
if (errors.length > 0) {
document.getElementById("errors").innerHTML = errors.join("<br>")
console.log('Error logging in')
return false;
} else if(errors.length < 0 && userName.value){
console.log('Youre logged in!')
}
};