为什么输入返回空?

时间:2018-11-27 18:29:34

标签: javascript html5

我遇到如下输入问题:

  1. 在进入屏幕时,如果您已经在输入中输入了一些数据并使用该数据进行了键入,则该值在js中将我返回为空。

  2. 如果输入为空,并且键入内容时,第一位为空。

 
<div class="form-group EGLF pb-3">
    <input type="text" id="FLUI" class="form-control FI EFLI" autocomplete="on" autofocus required>
    <label class="EFL">Usuário</label>
    <span class="EFHL"></span>
    <span class="EFBL"></span>
    <div class="FMFIFL mt-2 ml-1">Por favor, Insira um nome de usuário!</div>
</div>
                               
window.addEventListener('load', () => {
    const username = document.getElementById('FLUI'),
        userPassword = document.getElementById('FLUPI');

    username.addEventListener('keypress', (event) => {
        if (username.value.length > 0) {
            const regexp = new RegExp(/[a-z]/g);
            console.log(username.value)
            console.log(regexp.test(username.value))
        }
    });
});

enter image description here enter image description here

1 个答案:

答案 0 :(得分:0)

在处理value事件之后, 会更新keypress。这样一来,您就可以使用preventDefault()来阻止value的更新。

如果要在keyup更新后运行函数,请使用value事件。