Кейдаун событие Javascript?

0

Я написал сценарий, который запускает кнопку отправки, когда я нажимаю клавишу ввода в текстовом поле, TextArea возвращается к строке до активации отправки.

Я хочу помешать TextArea не возвращаться к линии

есть мой сценарий

jQuery( "#div1" ).on( "keydown", function(event) {
    if(event.which == 13){ 
        if(document.getElementById('checkbox').checked){             
            jQuery("#envoyer").trigger('click');
        }
    }
});
Теги:
keydown

1 ответ

1
Лучший ответ

Вам нужно отменить мероприятие!

event.preventDefault();

Просто убедитесь, что только делаете это, когда отправляете форму - было бы очень легко случайно уничтожить все возможности ввода текста в любом месте;)

Кроме того, в качестве подсказки юзабилити я бы предложил добавить && !event.ctrlKey && !event.shiftKey в ваше условие if, поскольку это позволяет людям вводить разрывы строк вручную, как это было бы во многих чат-программах - если вы явно не хотите newlines, вам может быть лучше просто использовать <input type="text"/> вместо <textarea>, тем более, что это связано со встроенной функцией Enter-to-submit-form.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню