Ответ 1
Попробуйте следующее:
$(function() {
$("form").submit(function() { return false; });
});
Есть ли способ сделать форму НЕ обновлять или называть что-либо, когда вы нажимаете клавишу "Enter" на клавиатуре?
Большое вам спасибо.
Я нашел этот код для предотвращения использования Enter, но он НЕ работает в IE: (
$(document).ready(function() {
$(window).keydown(function(event){
if(event.keyCode == 13) {
event.preventDefault();
return false;
}
});
}
Попробуйте следующее:
$(function() {
$("form").submit(function() { return false; });
});
Отключение события submit
не является хорошей идеей. Теперь вы можете никогда отправить форму, нажав кнопку, для которой она предназначена.
Скорее зацепите событие keypress
:
<form onkeypress="return event.keyCode != 13">
или в jQuery-вкусе:
$('form').keypress(function(event) {
return event.keyCode != 13;
});
13
- ключевой код Enter. Это работает во всех браузерах от IE6 до всех текущих. Вам нужно только учитывать текстовые поля. Затем вы можете рассмотреть эту конструкцию:
$(':input:not(textarea)').keypress(function(event) {
return event.keyCode != 13;
});
добавить свойство onSubmit в тег формы.
<form onSubmit="return false;">
Вы можете предотвратить отправку формы с помощью 'enter' ключа изначально , если вы используете AngularJS.
Согласно спецификации HTML и AngularJS, вам необходимо проверить этот список:
action=...
(AngularJS обрабатывает его автоматически)button
с атрибутом type="submit"
Итак, если у вас нет атрибута действия и кнопки отправки, то ваша форма не должна быть отправлена нажатием клавиши ввода.
Кроме того, кросс-браузерный ключевой код:
var code = (e.keyCode ? e.keyCode : e.which);