Function Reference


_IEFormElementOptionSelect

Set the value of a specified form element

#include <IE.au3>
_IEFormElementOptionSelect ( ByRef $oObject, $sString [, $iSelect = 1 [, $sMode = "byValue" [, $iFireEvent = 1]]] )

Parameters

$oObject Form Element Object of type "Select Option"
$sString Value used to match element - treatment based on $sMode
$iSelect [optional] specifies whether element should be selected or deselected
    -1 = Return selected state
    0 = Deselect the element
    1 = (Default) Select the element
$sMode [optional] specifies search mode
    "byValue" = (Default) value of the option you wish to select
    "byText" = text of the option you wish to select
    "byIndex" = 0-based index of option you wish to select
$iFireEvent [optional] specifies whether to fire OnChange and OnClick events after changing value
    0 = do not fire OnChange or OnClick event after setting value
    1 = (Default) fire OnChange and OnClick events after setting value

Return Value

Success: the current selected state if $iSelect = -1, else returns 1.
Failure: 0 and sets the @error flag to non-zero.
@error: 3 ($_IEStatus_InvalidDataType) - Invalid Data Type
4 ($_IEStatus_InvalidObjectType) - Invalid Object Type
5 ($_IEStatus_InvalidValue) - Invalid Value
7 ($_IEStatus_NoMatch) - No Match
@extended: Contains invalid parameter number

Remarks

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

Related

_IEFormElementCheckBoxSelect, _IEFormElementGetValue, _IEFormElementRadioSelect, _IEFormElementSetValue

Example

Example 1

; Open a browser with the form example, get reference to form, get reference
; to select element, cycle 10 times selecting options byValue, byText and byIndex

#include <IE.au3>

Local $oIE = _IE_Example("form")
Local $oForm = _IEFormGetObjByName($oIE, "ExampleForm")
Local $oSelect = _IEFormElementGetObjByName($oForm, "selectExample")
_IEAction($oSelect, "focus")
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

_IEQuit($oIE)

Example 2

; Open a browser with the form example, get reference to form, get reference
; to select multiple element, cycle 5 times selecting and then deselecting
; options byValue, byText and byIndex.

#include <IE.au3>

Local $oIE = _IE_Example("form")
Local $oForm = _IEFormGetObjByName($oIE, "ExampleForm")
Local $oSelect = _IEFormElementGetObjByName($oForm, "multipleSelectExample")
_IEAction($oSelect, "focus")
For $i = 1 To 3
        _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

_IEQuit($oIE)

Example 3

; Open a browser with the form example, get reference to form, get reference
; to select element, check to see if the option "Freepage" is selected and
; report result.  Repeat for the option with index 0 and for the option
; with value of 'midipage.html'

#include <IE.au3>
#include <MsgBoxConstants.au3>

Local $oIE = _IE_Example("form")
Local $oForm = _IEFormGetObjByName($oIE, "ExampleForm")
Local $oSelect = _IEFormElementGetObjByName($oForm, "selectExample")
If _IEFormElementOptionSelect($oSelect, "Freepage", -1, "byText") Then
        MsgBox($MB_SYSTEMMODAL, "Option Selected", "Option Freepage is selected")
Else
        MsgBox($MB_SYSTEMMODAL, "Option Selected", "Option Freepage is Not selected")
EndIf
If _IEFormElementOptionSelect($oSelect, 0, -1, "byIndex") Then
        MsgBox($MB_SYSTEMMODAL, "Option Selected", "The First (index 0) option is selected")
Else
        MsgBox($MB_SYSTEMMODAL, "Option Selected", "The First (index 0) option is Not selected")
EndIf
If _IEFormElementOptionSelect($oSelect, "midipage.html", -1, "byValue") Then
        MsgBox($MB_SYSTEMMODAL, "Option Selected", "The option with value 'midipage.html' is selected")
Else
        MsgBox($MB_SYSTEMMODAL, "Option Selected", "The option with value 'midipage.html' is NOT selected")
EndIf

_IEQuit($oIE)