Список выбора
Ниспадающий список выбора (Select) описывается посредством использования тега <SELECT>. Причем каждый из доступных предлагаемых вариантов должен быть определен тегом <OPTION>.
Элемент управления Select имеет большой набор свойств, приведенных ниже.
Form. Данное стандартное свойство элементов управления позволяет сослаться на родительскую форму, что обеспечивает доступ к ее свойствам.
Length. Свойство позволяет определить количество элементов, отображенных в списке выбора, совпадающее с числом тегов <ОРТION> и количеством элементов в массиве Options, речь о котором пойдет ниже.
Name. Свойство возвращает имя элемента управления Select, заданное посредством атрибута Name его одноименного тега.
SelectIndex. Это свойство позволяет установить индекс выбранного элемента массива Options. Следует учитывать, что нумерация элементов начинается с нуля.
Options. Данное свойство позволяет сослаться на набор Options, который содержит массив элементов списка выбора. Иначе говоря, элементами массива являются предлагаемые варианты, каждый из которых заключен в теге <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. Данный метод позволяет передать фокус элементу Select без генерирования события 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. Работа со списком выбора