» Навигация
- - - - - - - - - - - - - - - -
  » Наша кнопка
- - - - - - - - - - - - - - - -
   » Отправка форм
 
Автор: Алексей Голубев

Сайт: http://www.frnet.narod.ru/

Для отправки форм используется специальная кнопка: submit. Создается она следующим образом:

<form action='.../cgi-bin/script.pl'>
...
<input type='submit' value='Отправить'>
...
</form>
По ее нажатию вызывается событие OnSubmit. Это событие относиться к событиям формы (сам я, к моему великому стыду, раньше думал, что к самой кнопке).

1. Ликвидация ошибок в заполнении формы.

При отправке пользователь может ошибиться в заполнении формы. Пользователь, спеша куда-то, нажимает кнопку отправки, и ошибочные данные идут на сервер. После нажатия на кнопку пользователя внезапно осеняет, что он допустил ошибку. Но уже поздно.

Для того, чтобы избежать подобного дадим пользователю возможность исправить это, спросив у него примерно следующее: «Правильно ли заполнены поля формы?»

Подобное создается всего одним методом confirm объекта window, следующим образом:

<form action=".../cgi-bin/script.pl" OnSubmit="return confirm('Правильно ли заполнены поля формы?')">
...
<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, иначе отправка пройдет всего один раз, т.к. сразу после отправки браузер начинает загружать скрипт, которому отправили форму.

Теперь напишем скрипт для отправки формы:

function submit_f(n) {
for ( i=1; i<=n; i++)
document.all.frmSubmit.submit()
}
Не забудьте про скобки после submit.

Вы можете скачать скрипты разобранные в статье здесь (оба скрипта в одном архиве).

 

  » Друзья сайта
- - - - - - - - - - - - - - - -
  » Разное
- - - - - - - - - - - - - - - -
  » Счетчики
- - - - - - - - - - - - - - - -
  Дизайнер и ведущий проекта: Голубев Алексей
Copyright Alexei Golubev © 2004
Hosted by uCoz