Основы создания сценариев, знакомство с VBScript

       

Список выбора


Ниспадающий список выбора (Select) описывается посредст­вом использования тега <SELECT>. Причем каждый из доступ­ных предлагаемых вариантов должен быть определен тегом <OPTION>.

Элемент управления Select имеет большой набор свойств, приведенных ниже.

Form. Данное стандартное свойство элементов управления по­зволяет сослаться на родительскую форму, что обеспечивает дос­туп к ее свойствам.

Length. Свойство позволяет определить количество элементов, отображенных в списке выбора, совпадающее с числом тегов <ОРТION> и количеством элементов в массиве Options, речь о котором пойдет ниже.

Name. Свойство возвращает имя элемента управления Select, заданное посредством атрибута Name его одноименного тега.

SelectIndex. Это свойство позволяет установить индекс вы­бранного элемента массива Options. Следует учитывать, что ну­мерация элементов начинается с нуля.

Options. Данное свойство позволяет сослаться на набор Op­tions, который содержит массив элементов списка выбора. Иначе говоря, элементами массива являются предлагаемые варианты, каждый из которых заключен в теге <OPTION>.

Объект Options, в свою очередь, также имеет свои свойства.

DefaultSelected. Свойство служит для определения элемента, выбранного по умолчанию. HTML-код позволяет создать вариант выбора по умолчанию посредством атрибута SELECTED тега <OPT1ON>. Если при описании SELECTED не использовался, значит свойство DefaultSelected возвращает False, в противном случае True.

Length. Данное свойство аналогично одноименному свойству объекта Select.

Selected. Значение этого свойства - нуль либо единица в зави­симости от того, выбран данный элемент или нет. Это свойство очень удобно использовать при работе с возможностью множест­венного выбора. В этом случае, последовательно анализируя свойство Selected для каждого из элементов массива, можно вы­явить все отмеченные варианты.

SelectedIndex. Данное свойство набора Options идентично од­ноименному свойству объекта Select.


Однако необходимо учитывать, что при множественном выборе SelectedIndex возвращает лишь индекс первого элемента из выбранных.

Text.

Свойство позволяет определить строковое значение, ус­тановленное тегом <OPTIONS>. Вообще говоря, именно из этих строк и состоит ниспадающий список выбора.

Два события, определенных над встроенным элементом управления Select, приведены ниже.

OnFocus.

Генерируется при активизации списка выбора. Вы­зов метода Focus не приводит к возникновению события OnFocus.

OnChange.

Данное событие генерируется при выборе любого другого элемента из ниспадающего списка.

Также элемент управления Select поддерживает два метода.

Blur. Позволяет деактивизировать элемент, то есть лишить его фокуса. Однако неизвестно, какой элемент станет активным после вызова данного метода. В связи с этим считается более логичным и последовательным передать фокус явно одному из неактивных элементов управления.

Focus. Данный метод позволяет передать фокус элементу Se­lect без генерирования события OnFocus.

Приведенный ниже пример (Пример 39) иллюстрирует ис­пользование списка выбора при работе простейшего калькулято­ра (Рис.16). Для работы калькулятора заведены три поля ввода, один спи­сок выбора и две кнопки. Два первых поля ввода позволяют задать необходимые операнды. Список выбора дает возможность указать требуемую операцию. Первая кнопка, Calculate. обеспечивает вывод результата вычислений в третьем поле ввода. Кнопка Clear приводит форму в исходное состояние.

Пример 39. Использование списка выбора

<HTML>

<HEAD>

<TITLE> пример использования поля для выбора</TITLE>

<SCRIPT Language="VBScript">

 Sub Calculate_OnClick

znak = Document.Calc.Sign.Options _

(Document.Calc.Sign.SelectedIndex).Text

elem1 = Document.Calc.element_1.Value

elem2 = Document.Calc.element_2.Value

elem1 = CDbl(elem1)

elem2 = CDbl(elem2)

Select Case znak

 Case "+"

res = elem1+elem2

Case "-"



res = elem1-elem2

Case "*"

res = elem1*elem2

Case "/"

res = elem1/elem2

Case "^"

res = elem1^elem2

Case "ln"

res = LOG(elem1)

End Select

Document.Calc.Result.Value=res

End Sub

</SCRIPT>

 </HEAD>

<BODY BGCOLOR="#FFFFFF">

 <P ALIGN="center">

<FONT COLOR="Red" SIZE="5">

Калькулятор </FONT>

</P>

<FORM NAME="Calc">

 <P ALIGN="center">

 <INPUT TYPE="text" NAME="element_1">

<BR>

<SELECT NAME="Sign" sizе="1">

<OPTION>+

<OPTION>-

<OPTION>*

<OPTION>/

<OPTION>^

<OPTION>ln

</SELECT> <BR>

<INPUT TYPE="text" SIZE="11"

NAME="element_2">

<BR>

=

<BR>

<INPUT TYPE="text" SIZE=”20” NAME="result">

</P>

<P ALIGN="center">

<INPUT   TYPE="button"  NAME ="Calculate" VALUE="Вычислить">

</P>

<P ALIGN="center">

<INPUT  TYPE="reset"   NAME="Сброс"

</P>

</FORM>

</BODY>

</HTML>



Рис.16. Работа со списком выбора


Содержание раздела