Урок 5. Использование VBScript при создании форм
Поскольку возрастает интнерес к формам на Web-страницах, появляется
необходимость в проверке правильности данных перед их
отправкой броузером клиента на сервер. Как язык сценария VBScript
хорошо приспособлен для решения этой задачи. После того как
заполнена и проверена, отправить данные может тот же самый сценарий.
На этом уроке мы рассмотрим процессы проверки и отправки
данных.
Проверка содержимого ваших форм
Этот процесс заключаетсч в проверке того, что:
- введены все требуемые данные;
- все данные введены правильно.
Написание сценария, осуществляющего такую проверку,
однообразно и утомительно, но позволяет избавиться от ошибок при
передаче данных.
Пример такой проверки, который мы будем исследовать, не задействует
ничего нового из средст VBScript. Мы просто использовали элементы,
изученные в предыдущих уроках, и соединили их новым способом. Перед
тем как идти дальше, вы можете посчитать для себя полезным
поразмышлять самостоятельно, как это все можно сделать с помощью уже
знакомых средств VBScript.
Уже подумали? Теперь рассмотрим пример, для того чтобы показать вам,
что можно сделать для проверки содержимого форм.
Проверка вводимой информации
Этот пример на удивление прост. В нем есть единственное поле, куда
пользователь может ввести свой возраст и кнопку, используемую для
отправки данных на сервер.
<HTML>
<HEAD>
<TITLE>Упражнение по VBScript: 5</TITLE>
<SCRIPT LANGUAGE="VBScript">
<!--Это сделано для броузеров, которые не понимают
Option Explicit
Sub cmdSubmit_OnClick()
'Проверяем, введена ли информация пользователем.
If (Len(document.frmExample5a.txtAge.value) = 0) Then
MsgBox "Перед отправкой вы долны ввести свой возраст."
Exit Sub
End If
'Проверка того, является ли введенная информация числом.
If (Not(IsNumeric(document.frmExample5a.txtAge.value))) Then
MsgBox "В поле возраста необходимо ввести число."
Exit Sub
End If
'Проверяем, правильно ли введен возраст.
If (document.frmExample5a.txtAge.value < 0) Or _
(document.frmExample5a.txtAge.value > 100) Then
MsgBox "Вы ввели неверный возраст (столько не живут)."
Exit Sub
End If
'Если данные корректны, то отправляем их.
MsgBox "Возраст введен верно. Спасибо."
document.frmExample5a.submit
End Sub
-->
</SCRIPT>
</HEAD>
<BODY>
<H1>Проверка вводимой информации</H1>
<P>Это упражнение демонстрирует технологию VBScript.</P>
<FORM NAME="frmExample5a">
<TABLE>
<TR>
<TD>Введите свой возраст:</TD>
<TD><INPUT TYPE="Text" NAME="txtAge" SIZE=2></TD>
</TR>
<TR>
<TD><INPUT TYPE="Button" NAME="cmdSubmit" VALUE="Отослать"></TD>
<TD></TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>
Как это работает
Основная часть этого сценария --
это программа обработки события OnClick кнопки отправки cmdSubmit. Начинае мы с
проверки, ввел ли пользователь вообще что-нибуть в поле, с помощью
встроенной функции VBScript Len. Эта функция
возвращает длину указанной строки. Ели эта длина равна 0, данные не
корректны. Мы сообщаем об этом пользователю и выходим из роцедуры
отправки с помощью выражения Exit Sub:
'Проверяем,
введена ли информация пользователем.
If (Len(document.frmExample5a.txtAge.value) = 0) Then
MsgBox "Перед отправкой вы долны
ввести свой возраст."
Exit Sub
End If
Дальше мыпроверяем, является ли эта информация числом. Встроенная
функция VBScript IsNumeric
возвращает значение true,
если проверяемое значение --
числовая величина. Если нет, мы говорим об этом пользователю и
выходим из программы:
'Проверка того,
является ли введенная информация числом.
If (Not(IsNumeric(document.frmExample5a.txtAge.value))) Then
MsgBox "В поле возраста необходимо
ввести число."
Exit Sub
End If
Последняя проверка заключается в отсеве значений, больших 100 и
меньших 0.
'Проверяем,
правильно ли введен возраст.
If (document.frmExample5a.txtAge.value < 0) Or _
(document.frmExample5a.txtAge.value > 100) Then
MsgBox "Вы ввели неверный возраст (столько
не живут)."
Exit Sub
End If
Вот и все. Познакомившись с этим примером, вы узнали об основных
приемах для проверки данных с использованием средств VBScript.
Отправка формы
По сравнению с проверками поцесс отправки выглядит очень простым. В
нашем примере мы использовали стандартную кнопку HTML с надписью
Отослать, связанную с проседурой обработки, которая проверяет и
отсылает содержимое формы.
Код, который нужно было добавить
для отправки, показан ниже:
' Если данные корректны, то отправляем их.
MsgBox "Возраст введен верно. Спасибо."
document.frmExample5a.submit
Выражение с функцией MsgBox
сообщает пользователю, что
введенная информация обработанна.
Затем форма отправляет на сервер с
помощью метода submit
объекта form.
[ продолжение ]
[ на
главную ]
|