Многие люди не любят печатать, они предпочтут оставить поле незаполненым. Если эта информация вам очень нужна, вам придется предоставить посетителям некоторые удобства. Один из способов: поддерживать величины по умолчанию и отмечать поля, обязательные для заполнения. Другой путь – добавить сценарий проверки на корректность (validation script) – JavaScript, запускаемый при отправке формы и проверяющий содержимое всех необходимых полей. Если такой сценарий обнаруживает незаполненные поля, он выводит сообщение и не отправляет форму. Наконец, вы можете проверять информацию формы при ее попадании на серверный сценарий или программу уже после отправки, и выводить ошибку или возвращать форму.
Если посетители отправляют форму без необходимой информации, сделайте следующее.
Чтобы поля с ключевой информацией, такой как имя посетителя, не оставались незаполнеными, используйте на странице сценарий проверки на корректность. Например, следующая функция JavaScript проверяет заполненость полей realname и email. Если поля пустые, сценарий выводит сообщение от броузера и указывает на незаполненные поля.
<script language="JavaScript"> <!-- function validate(form){ //Check for name and e-mail entries. if (form.realname.value ==""){ alert("Please type your name."); form.realname.focus(); return false;//Don’t submit the form } else if (form.email.value ==""){ alert("Please type your e-mail address."); form.email.focus(); return false; //Don’t submit the form } return true; //Required fields are there -submit the form } //--> </script>
Чтобы использовать этот сценарий, вставьте код в раздел <HEAD> вашей страницы. Затем присоедините функцию к событию onSubmit вашей формы как указано ниже, тогда функция будет выполняться броузером прежде, чем информация будет отправлена сетевому сценарию. (Утверждение return указывает, что форма не отправится, если сценарий обнаружит пропущенную информацию.)
<form action="formmail.cgi"method=POST onSubmit="return validate(this)">
Другие идеи насчет сценариев проверки на корректность см. в сети или в Приложении C.