Сайт: http://www.frnet.narod.ru/
Для отправки форм используется специальная кнопка: submit. Создается она следующим образом:
<form action='.../cgi-bin/script.pl'>
...
<input type='submit' value='Отправить'>
...
</form>
По ее нажатию вызывается событие OnSubmit. Это событие относиться к событиям формы (сам я, к моему великому стыду, раньше думал, что к самой кнопке).
...
<input type='submit' value='Отправить'>
...
</form>
1. Ликвидация ошибок в заполнении формы.
При отправке пользователь может ошибиться в заполнении формы. Пользователь, спеша куда-то, нажимает кнопку отправки, и ошибочные данные идут на сервер. После нажатия на кнопку пользователя внезапно осеняет, что он допустил ошибку. Но уже поздно.
Для того, чтобы избежать подобного дадим пользователю возможность исправить это, спросив у него примерно следующее: «Правильно ли заполнены поля формы?»
Подобное создается всего одним методом confirm объекта window, следующим образом:
<form action=".../cgi-bin/script.pl" OnSubmit="return confirm('Правильно ли заполнены поля формы?')">
...
<input type=submit value="Отправить">
...
</form>
Так мы обеспечили достоверность информации посылаемой на сервер.
...
<input type=submit value="Отправить">
...
</form>
Помимо использования события формы OnSubmit можно вставить соответствующий код в событие кнопки OnClick. Эффект будет такой же.
2. Отправка форм программными методами.
Итак, для отправки формы при помощи программы используется специальный метод submit.
Для иллюстрации работы этого метода представим, что у вас есть страница с которой нужно отправить форму не один, а несколько раз (причины такой надобности выяснять не будем). Создадим форму:
<form action=".../cgi-bin/script.pl" target=_blank id=frmSubmit>
...
<input type=button value=Отправить onClick="submit_f(4)">
...
</form>
Замете, что мы можем использовать и обыкновенную кнопку. Обязательно установите атрибут target, иначе отправка пройдет всего один раз, т.к. сразу после отправки браузер начинает загружать скрипт, которому отправили форму....
<input type=button value=Отправить onClick="submit_f(4)">
...
</form>
Теперь напишем скрипт для отправки формы:
function submit_f(n) {
for ( i=1; i<=n; i++)
document.all.frmSubmit.submit()
}
Не забудьте про скобки после submit.
for ( i=1; i<=n; i++)
document.all.frmSubmit.submit()
}
Вы можете скачать скрипты разобранные в статье здесь (оба скрипта в одном архиве).
