如何在JavaScript中确认两个密码相等

如何在JavaScript中确认两个密码相等,javascript,Javascript,我试图让一个简单的密码确认器在JS中工作。基本上,用户有两个输入字段,如果它们匹配,则不会发生任何情况,但如果它们不匹配,则会出现一个警报窗口 这也是我使用javascript的第一天,也是我关于堆栈溢出的第一个问题,对于任何错误或失误表示歉意。多谢各位 <body> <form> Password:<br> <input type="password" name="password" placeholder="P

我试图让一个简单的密码确认器在JS中工作。基本上,用户有两个输入字段,如果它们匹配,则不会发生任何情况,但如果它们不匹配,则会出现一个警报窗口

这也是我使用javascript的第一天,也是我关于堆栈溢出的第一个问题,对于任何错误或失误表示歉意。多谢各位

<body>
    <form>
        Password:<br>
        <input type="password" name="password" placeholder="Password">
        <br>
        Re-enter Password:<br>
        <input type="password" name="confirmPassword" placeholder="Confirm password">
        <br>
        <input type="submit" onclick="ansValidation()" value="Sign Up">
    </form>
    <br>
    <script>
        function ansValidation() {
            var nameValue = document.getElementById("name")
            var passValue = document.getElementById("password")
            var confpassValue = document.getElementById("confirmPassword")
            if(typeof nameValue != String){
                window.alert("Please re-enter your name")
            }else if(passValue != confpassValue) {
               window.alert("Passwords do not match!")
            }
        }
    </script>
</body>


密码:

重新输入密码:


函数验证(){ var nameValue=document.getElementById(“名称”) var passValue=document.getElementById(“密码”) var confpassValue=document.getElementById(“confirmPassword”) 如果(名称值的类型!=字符串){ window.alert(“请重新输入您的姓名”) }else if(passValue!=confpassValue){ 警告(“密码不匹配!”) } }
函数返回一个节点,而不是输入的值。您需要调用这些节点上的
value
属性来访问它们的值

功能验证(ev){
防止违约
//没有名为name的输入
//var nameValue=document.getElementById(“名称”).value
var nameValue=“测试”;
var passValue=document.getElementById(“密码”).value
var confpassValue=document.getElementById(“confirmPassword”).value
//typeof运算符返回一个字符串。
如果(名称值的类型!=“字符串”){
window.alert(“请重新输入您的姓名”)
//我们使用严格的验证(!==),因为这是一个很好的实践。
}else if(passValue!==confpassValue){
警告(“密码不匹配!”)
}
}

密码:

重新输入密码:

您必须获得
元素
控制台.log(passValue,confpassValue)的“value”属性
我怀疑两个不同的输入元素是否会相等。