Функция _IEFormElementOptionSelect

 ↑  ←  Описание функции


_IEFormElementOptionSelect

Устанавливает значение указанного элемента формы.

#include <IE.au3>
_IEFormElementOptionSelect(ByRef $o_object, $s_string [, $f_select = 1 [, $s_mode = "byValue" [, $f_fireEvent = 1]]])

Параметры

$o_object Объект элемента формы типа "Выберите опцию"
$s_string Значение для сопоставления элемента - основывается на $s_mode
$f_select [необязательный] Определяет, должен ли элемент быть отмеченный или не отмеченный
-1 = Возвращает состояние выбора
0 = Отменяет выбор элемента
1 = (по умолчанию) Выбирает элемент
$s_mode [необязательный] Режим поиска
byValue = (по умолчанию) по параметру "value"
byText = по тексту
byIndex = по индексу опции, отсчёт от 0
$f_fireEvent [необязательный] specifies whether to fire OnChange and OnClick events after changing value
0 = do not fire OnChange or OnClick event after setting value
1 = (по умолчанию) fire OnChange and OnClick events after setting value

Возвращаемое значение

Успех:Если $f_select = -1, то возвращается текущее состояние выбора, иначе возвращается 1
Ошибка:Возвращает 0 и устанавливает @error
@error:0 ($_IEStatus_Success) = Нет ошибок
3 ($_IEStatus_InvalidDataType) = Неверный тип данных
4 ($_IEStatus_InvalidObjectType) = Неверный тип объекта
5 ($_IEStatus_InvalidValue) = Неверное значение
7 ($_IEStatus_NoMatch) = Нет совпадений
@extended:Содержит номер неверного параметра

Примечания

The $f_fireEvent parameter is significant only if the form element has an onChange event associated with it.

См. также

_IEFormElementCheckBoxSelect, _IEFormElementRadioSelect, _IEFormElementGetValue, _IEFormElementSetValue

Пример

; *******************************************************
; Пример 1 - Открывает браузер с примером "form", получает ссылку на форму, получает ссылку
;               на элемент выбора. Цикл 10 раз выбирает опции по параметру byValue, byText и byIndex
;               Примечание: Возможно вам придётся прокрутить страницу вниз, чтобы видеть изменения
; *******************************************************

#include <IE.au3>
$oIE = _IE_Example("form")
$oForm = _IEFormGetObjByName($oIE, "ExampleForm")
$oSelect = _IEFormElementGetObjByName($oForm, "selectExample")
For $i = 1 To 10
    _IEFormElementOptionSelect($oSelect, "Freepage", 1, "byText")
    Sleep(1000)
    _IEFormElementOptionSelect($oSelect, "midipage.html", 1, "byValue")
    Sleep(1000)
    _IEFormElementOptionSelect($oSelect, 0, 1, "byIndex")
    Sleep(1000)
Next

; *******************************************************
; Пример 2 - Открывает браузер с примером "form", получает ссылку на форму, получает ссылку
;               на элемент множественного выбора. Цикл 5 раз выбирает и отменяет выбор
;               опции по параметру byValue, byText и byIndex.
;               Примечание: Возможно вам придётся прокрутить страницу вниз, чтобы видеть изменения
; *******************************************************

#include <IE.au3>
$oIE = _IE_Example("form")
$oForm = _IEFormGetObjByName($oIE, "ExampleForm")
$oSelect = _IEFormElementGetObjByName($oForm, "multipleSelectExample")
For $i = 1 To 5
    _IEFormElementOptionSelect($oSelect, "Carlos", 1, "byText")
    Sleep(1000)
    _IEFormElementOptionSelect($oSelect, "Name2", 1, "byValue")
    Sleep(1000)
    _IEFormElementOptionSelect($oSelect, 5, 1, "byIndex")
    Sleep(1000)
    _IEFormElementOptionSelect($oSelect, "Carlos", 0, "byText")
    Sleep(1000)
    _IEFormElementOptionSelect($oSelect, "Name2", 0, "byValue")
    Sleep(1000)
    _IEFormElementOptionSelect($oSelect, 5, 0, "byIndex")
    Sleep(1000)
Next

; *******************************************************
; Пример 3 - Открывает браузер с примером "form", получает ссылку на форму, получает ссылку
;               на элемент выбора, проверяет, выбрана ли опция "Freepage" и сообщает о результате
;               Повторяет для опции с индексом 0 и для опции со значением value='midipage.html'
;               Примечание: Возможно вам придётся прокрутить страницу вниз, чтобы видеть изменения
; *******************************************************

#include <IE.au3>
$oIE = _IE_Example("form")
$oForm = _IEFormGetObjByName($oIE, "ExampleForm")
$oSelect = _IEFormElementGetObjByName($oForm, "selectExample")
If _IEFormElementOptionSelect($oSelect, "Freepage", -1, "byText") Then
    MsgBox(4096, "Выбрана ли опция?", "Опция Freepage выбрана")
Else
    MsgBox(4096, "Выбрана ли опция?", "Опция Freepage не выбрана")
EndIf
If _IEFormElementOptionSelect($oSelect, 0, -1, "byIndex") Then
    MsgBox(4096, "Выбрана ли опция?", "Первая опция (индекс 0) выбрана")
Else
    MsgBox(4096, "Выбрана ли опция?", "Первая опция (индекс 0) не выбрана")
EndIf
If _IEFormElementOptionSelect($oSelect, "midipage.html", -1, "byValue") Then
    MsgBox(4096, "Выбрана ли опция?", "Опция со значением 'midipage.html' выбрана")
Else
    MsgBox(4096, "Выбрана ли опция?", "Опция со значением 'midipage.html' не выбрана")
EndIf