设置指定表单元素的值.
#include <IE.au3>
_IEFormElementOptionSelect ( ByRef $o_object, $s_string [, $f_select = 1 [, $s_mode = "byValue" [, $f_fireEvent = 1]]] )
$o_object | "Select Option"类型的表单元素对象 |
$s_string | 用于匹配元素的值 - 基于设定的模式$s_mode |
$f_select | [可选参数]: 指定元素是选中或未选中 -1 = 返回选中状态 0 = 不选中元素 1 = (默认)选中元素 |
$s_mode | [可选参数]: 定义搜索模式 byValue = (默认)希望选中的选项的值 byText = 希望选中的选项的文本 byIndex = 希望选中的选项的0基索引 |
$f_fireEvent | [可选参数]: 指定在改变值后是否激活OnChange和OnClick事件 0 = 设置值后不激活OnChange或OnClick事件 1 = (默认)设置值后激活OnChange和OnClick事件 |
成功: | 如果$f_select = -1, 返回当前的被选中状态, 或返回1 |
失败: | 返回 0并设置@ERROR |
@Error: | 0 ($_IEStatus_Success) = 无错误 |
3 ($_IEStatus_InvalidDataType) = 无效数据类型 | |
4 ($_IEStatus_InvalidObjectType) = 无效对象类型 | |
5 ($_IEStatus_InvalidValue) = 无效值 | |
7 ($_IEStatus_NoMatch) = 无匹配 | |
@Extended: | 包含无效参数数量 |
; *******************************************************
; 示例 1 - 打开含表单示例的浏览器, 获取到表单的引用, 获取
; 到选择元素的引用, 根据 byValue, byText 和 byIndex 循环十次进行选择
; 注意: 您可能需要往下滚动页面来查看发生的变化
; *******************************************************
#include <IE.au3>
Local $oIE = _IE_Example("form")
Local $oForm = _IEFormGetObjByName($oIE, "ExampleForm")
Local $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 - 打开含表单示例的浏览器, 获取到表单的引用, 获取
; 到选择的多个元素的引用, 循环 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 - 打开含表单示例的浏览器, 获取到表单的引用, 获取
; 到选择的元素的引用, 检查是否选择了 "Freepage" 选项并
; 报告结果. 加上 index 0 和
; '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, "Option Selected", "Option Freepage is selected")
Else
MsgBox(4096, "Option Selected", "Option Freepage is Not selected")
EndIf
If _IEFormElementOptionSelect($oSelect, 0, -1, "byIndex") Then
MsgBox(4096, "Option Selected", "The First (index 0) option is selected")
Else
MsgBox(4096, "Option Selected", "The First (index 0) option is Not selected")
EndIf
If _IEFormElementOptionSelect($oSelect, "midipage.html", -1, "byValue") Then
MsgBox(4096, "Option Selected", "The option with value 'midipage.html' is selected")
Else
MsgBox(4096, "Option Selected", "The option with value 'midipage.html' is NOT selected")
EndIf