У меня есть форма со скрытой кнопкой отправки и одним вводом текста. В текстовом вводе с помощью jQuery я прикрепил к нему событие изменения, которое отправляет форму. Дело в том, что если я нажму Enter на вводе, форма будет отправлена дважды. Я думаю, это потому, что ввод отправляет форму, а ввод обнаруживает событие изменения и снова отправляет форму. У меня два вопроса: - Верна ли моя мысль? - Как я могу это исправить?
Это javascript:
$("input.price").live('change', function () {
$(this).closest('form').submit();
});
Изменить: я думаю, что e.preventDefault() предотвращает значение по умолчанию для события «изменить», но не предотвращает событие «отправить». Я пытаюсь сделать это до события «изменить», но безуспешно, но, возможно, я близок к решению :
$("input.price").live('submit', function (e) {
e.preventDefault();
});