Javascript: событие onchange не запускается при изменении значения в событии onkeyup [дубликат]

этот вопрос уже есть ответ здесь:

У меня просто этот код :

    <body>
        <input type="text" onkeyup="this.value = (new Date()).getSeconds()" onchange="alert(1)" /> 
    </body>

Я не знаю, почему значение textbox изменилось, когда я нажимаю клавишу, но событие onchange не срабатывает. Как может я увольняю событие onchange ?

1 ответов


на onchange будет срабатывать, когда вы покидаете внимание от него (если вы выполнили какие-либо изменения). Такое поведение происходит только с text и textarea типы ввода, потому что javascript не знает, когда вы закончите печатать.

Я не знаю, почему в коде есть флажок, но что угодно. С уважением, я не могу сказать вам, почему, но проблема заключается в динамическом изменении значения на входе (предположение, что изменение не выполняется пользователем, но я действительно не знаю), если вы удаляете код внутри onkeyup, он будет работать. Независимо от того, если вы хотите выполнить некоторый код, когда вход теряет фокус, вы можете использовать , является более точным в этом случае.