обнаружение ключа javascript без добавления последнего символа


Таким образом, у меня в основном есть функция, которая определяет клавишу, которую нажимает пользователь, и она отправляет форму всякий раз, когда пользователь нажимает пробел (не спрашивайте, почему). Вот мой javascript:

document.addEventListener('keydown', function(e){
    if(e.keyCode === 32) {
        setTimeout("submit()",1);
    }
})

Таким образом, подача формы работает, и поля отправляются в базу данных. предполагается, что в конце строки, которую он отправил, должен быть пробел, очевидно, потому что пользователь нажал пробел, чтобы отправить, но   не появляется в конце строки, когда она отображается.

1 2

1 ответ:

Разница между событиями keydown и keyup состоит в том, что keydown срабатывает до добавления нажатой буквы к содержимому, а keyup срабатывает после нее.

Если вы хотите, чтобы последний пробел тоже был добавлен, попробуйте привязать его к keyup.

Ссылка: http://www.quirksmode.org/dom/events/keys.html