Обработчик или источник события submit

.submit()

Устанавливает обработчик отправки формы на сервер, либо запускает это событие. Метод имеет три варианта использования:

.submit(handler(eventObject)):jQuery1.0

Устанавливает функцию handler в качестве обработчика события submit, на выбранные элементы.
Метод является аналогом bind("submit", handler(eventObject)).

handler(eventObject) — функция, которая будет установлена в качестве обработчика. При вызове она будет получать объект события eventObject.

.submit(eventData, handler(eventObject)):jQuery1.4.3

Метод отличается от предыдущего возможностью передавать в обработчик дополнительные данные.
Является аналогом bind("submit", eventData, handler(eventObject)).

handler(eventObject) — см. выше.
eventData — дополнительные данные, передаваемые в обработчик. Они должны быть представлены объектом в формате: {fName1:value1, fName2:value2, ...}.

.submit():jQuery1.0

Вызывает событие submit, у выбранных элементов страницы. Метод является аналогом trigger("submit").

Убрать установленный обработчик можно с помощью метода unbind().

Все три варианта использования метода, являются аналогами других методов (см. выше), поэтому все подробности использования submit(), можно найти в описании этих методов.

Событие submit происходит непосредственно перед отправкой формы на сервер и в обработчике можно инициировать отмену отправки формы, вызвав метод eventObject.preventDefault() или просто возвратив false.

В IE событие submit в отличие от других событий не обладает свойством "всплытия вверх по иерархии". Однако начиная с jQuery-1.4 эта недоработка устранена и обработчики события submit, установленные на элементы, которые лежат выше элемента формы по иерархии, будут оповещены о предстоящей отправке данных на сервер.

Пример

// установим обработчик события submit, элементу с идентификатором foo,
// после чего запретим отправку данных на сервер
$('#foo').submit(function(){
  alert('Форма foo отправлена на сервер.');
  return false;
});
 
// вызовем событие submit на элементе foo
$('#foo').submit();
 
// установим еще один обработчик события submit, на этот раз элементам 
// с классом block. В обработчик передадим дополнительные данные
$('.block').submit({a:12, b:"abc"}, function(eventObject){
  var externalData = "a=" + eventObject.data.a + ", b=" + eventObject.data.b;
  alert('Форма foo отправлена на сервер. '+
        'В обработчик этого события переданы данные: ' + externalData );
});

Ссылки

Поисковые ключи:
  • отправка формы на сервер
  • обработка события submit
  • обработчик события submit
  • .submit()
  • submit()