Простая функция onSubmit? - PullRequest
       1

Простая функция onSubmit?

1 голос
/ 03 октября 2011

Я пытаюсь вызвать простую функцию на представлении.Я попытался использовать onsubmit, а также слушатель с jQuery.Моя проблема в том, что когда пользователь нажимает клавишу ввода, он перенаправляется на mysite.com?

<form id="teleport">
<input id="tInput" type="text" value="Type a location" />
<input type="button" id="tSubmit" value="Submit"/> 
</form>

$("#teleport").submit(function () {
teleport(document.getElementById('tInput').value);
});

Как мне предотвратить что-либо при отправке?Также .submit () определяет только клавишу ввода, как мне прослушать как клавишу ввода, так и нажатия на кнопку отправки?

Ответы [ 2 ]

2 голосов
/ 03 октября 2011

Запретить отправку формы:

$("#teleport").submit(function (e) {
   teleport(document.getElementById('tInput').value);
   e.preventDefault();
});

Событие отправки перехватывает любой способ отправки формы - как при нажатии кнопки отправки, так и при нажатии клавиши ввода.

2 голосов
/ 03 октября 2011

Вам необходимо запретить действие формы по умолчанию.Вы можете сделать это с помощью event.preventDefault():

$("#teleport").submit(function (e) {
    e.preventDefault();
    teleport(document.getElementById('tInput').value);
});

В качестве альтернативы вы можете return false внутри обработчика событий submit для того же эффекта.

Самый простой способ сделать кнопкуотправить форму тоже можно будет изменить ее тип на submit:

<input type="submit" id="tSubmit" value="Submit" />

Или вы можете присоединить обработчик событий click к вашей текущей кнопке и вызвать submitсобытие формы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...