Как запустить обработку формы используя JavaScript

Недавно у меня появился вопрос, - "Как запустить обработку HTML формы используя JavaScript"?.

Обычно обработка формы запускается при нажатии кнопки с типом Submit (type='submit'), но бывают случаи, когда нужно запустить форму не нажимая кнопку.

Например, у нас есть поле Select:

<form method="get">
	<select name="vibor">
		<option value="значение 1">значение 1</option>
		<option value="значение 2">значение 2</option>
		<option value="значение 3">значение 3</option>
		<option value="значение 4">значение 4</option>
		<option value="значение 5">выбор 5</option>
	</select>
</form>

и нам нужно запустить обработку формы сразу при выборе какого-либо значения этого поля. В таком случае кнопка submit будет лишней, тут то нам и поможет JavaScript.

В управлении JavaScript, есть объект формы, содержащий submit() метод. Таким образом, мы можем использовать идентификатор формы, чтобы в дальнейшем запустить JS объект submit().

Например, у нас есть форма с id='myform', тогда код JavaScript для запуска обработки будет таким: document.forms["myform"].submit();

Пример кода, для запуска обработки формы при выборе значения поля SELECT:

<script type="text/javascript">
	function sform(){
		document.forms["myform"].submit();
	}
</script>
<form id="myform" method="get" action="#">
	<select name="vibor">
		<option value="value1" onclick='sform();'>значение 1</option>
		<option value="value2" onclick='sform();'>значение 2</option>
		<option value="value3" onclick='sform();'>значение 3</option>
		<option value="value4" onclick='sform();'>значение 4</option>
		<option value="value5" onclick='sform();'>значение 5</option>
	</select>
</form>

Также можно определить форму используя атрибут name:

<form name="myform" action="#">

Тогда обработку формы можно будет запустить так: document.myform.submit();.

Или select можно сабмитить, добавив onchange='this.form.submit()', пример:

<form method="get" action="#">
	<select name="year" onchange='this.form.submit()'>
		<option value="2009">2009</option>
		<option value="2010">2010</option>
		<option value="2011">2011</option>
		<option value="2012">2012</option>
		<option value="2013">2013</option>
	</select>
</form>

Пример кода, для запуска обработки формы при нажатии на ссылку:

<script type="text/javascript">
function submitform(){
  document.myform2.submit();
}
</script>
<form name="myform2" action="#" method='get'>
	Поиск: <input type='text' name='s' value='поисковой запрос' />
	<a href="javascript: submitform()">Search</a>
</form>

В некоторых случаях обработку формы можно запустить, вешая на какое-либо действие такой код: this.form.submit().

Пример кода, для запуска обработки формы при выборе Radio :

<form method="get" action="#" >
 <p><b>Каким браузером в основном пользуетесь?</b><br />
   <input type="radio" name="browser" value="ie" onclick='this.form.submit()'> Internet Explorer<br />
   <input type="radio" name="browser" value="opera" onclick='this.form.submit()'> Opera<br />
   <input type="radio" name="browser" value="firefox" onclick='this.form.submit()'> Firefox<br />
  </p>
</form>

Напоследок, страница с живыми примерами (при сабмите, обращайте внимание на адресную строку).