首页 > 解决方案 > 带密码验证 javascript 和 html 表单

问题描述

我试图编写一个简单的任务。我需要从 html 表单中获取密码,并检查那里是否既有数字又有字母,并且密码不长于 10 个字母或短于 4。所以我写了一些东西(可能很糟糕)并且它不起作用(令人惊讶xD)。无论如何,这是我的代码。

        function checkpassword(checked_id, error_id, err_color){

             var upperCaseLetters = /[A-Z]/g;
             var lowerCaseLetters = /[a-z]/g;
             var numbers = /[0-9]/g;
             element_checked = document.getElementById(checked_id);
             element_error = document.getElementById(error_id);
             element_error.style.color = err_color;
             if (!checked_id.value.match(upperCaseLetters) && !checked_id.value.match(lowerCaseLetters)) {
                 element_checked.style.backgroundColor = err_color;
                 element_error.innerHTML = "enter letters";
                 return false;
             }
             else if(!checked_id.value.match(numbers))
             {
                 element_checked.style.backgroundColor = err_color;
                 element_error.innerHTML = "Enter numbers";
                 return false;
             }
             return true;

       }

标签: javascripthtml

解决方案


首要问题是你用过checked_id.value,应该是element_checked.value

此外,如果您不需要它们是全局的,通常建议使用let而不是创建变量。var


推荐阅读