将事件监听器添加到带有密码字段的按钮

时间:2018-12-19 18:07:12

标签: javascript html events event-handling

我有一个简单的表单,要求输入密码,如果密码正确,则可以通过一个按钮将您转到另一个页面:

<div class="password">
    <form>
            <label for="pswd">Enter password: </label>
            <input type="password" id="pswd">
            <input type="button" id="myBtn" value="submit" onclick="checkPswd();" />
        </form>
    </div>

我也尝试通过按Enter键来启用提交密码。 javascript如下:

<script type="text/javascript">

        var input = document.getElementById("pswd");
        input.addEventListener("keyup",function(event){
            event.preventDefault();
            console.log('event');
            if(event.keyCode == 13){
                document.getElementById("myBtn").click();
                console.log("enter");
            }
        });
            function checkPswd() {
                var confirmPassword = "password";
                var password = document.getElementById("pswd").value;
                console.log(password)
                if (password == confirmPassword) {
                     window.location="next.html";
                }
                else{
                    alert("Passwords do not match.");
                }
            }

        </script>

这是行不通的;当我按下Enter键时,什么也没发生。什么都不会记录到控制台。如果我将事件侦听器添加到整个文档中,它确实会注册Enter键,但是会说密码不匹配。密码字段的值似乎为空。我在做什么错了?

(请注意,当我用鼠标单击“提交”按钮时,该方法有效)

0 个答案:

没有答案