倚栏听风 发表于 2008-12-1 14:57:54

IE UDF _IEFormElementRadioSelect 函数【新】问题。。请教高手。

_IEFormElementRadioSelect ( 对象变量, "字符串" , 名称 [, $f_select = 1 [, 模式 = "byValue" [, $f_fireEvent = 1]]] )
看例子里 对象变量 是一个 FORM 变量。
但是如果一个网页中没有 FORM ,该怎么使用这个函数呢?
例如
<html>
<input type="radio" name="rc80" value="a" >1
<input type="radio" name="rc80" value="b" >2
<input type="radio" name="rc80" value="c" >3
</html>
在这样的情况下。该如何使用该函数呢?如果直接使用 $OIE , 会提示错误。
可是帮助里说的确可以使用窗口的对象变量。 但为什么不行呢?

对象变量 InternetExplorer.Application,窗口或者框架(frame)对象的对象变量

[ 本帖最后由 倚栏听风 于 2008-12-2 22:39 编辑 ]

liongodmien 发表于 2008-12-1 15:50:25


$oSelect = _IEGetObjByName($OIE, 'rc80' [, 0-2])
if isobj($oselect) then
$oselect.checked = 1
;$oselect.fireevent('onchange')
;$oselect.fireevent('onclick')
endif


[ 本帖最后由 liongodmien 于 2008-12-1 20:01 编辑 ]

倚栏听风 发表于 2008-12-1 18:55:45

等下去测试下。

倚栏听风 发表于 2008-12-2 22:38:56

再问一个问题啊。
如果说要只要选第一个,第二第三都不选。
我该怎么定位呢?

或者说 $oSelect = _IEGetObjByName($OIE, 'rc80' , 0 ) 返回的是一个对象集合。
调用的方法是
for $o in $oselect
$o.checked = 1
next
但这样明显无法定位。
如果说用 $oSelect = _IEGetObjByName($OIE, 'rc80' , -1 ) 返回的是对象索引号。
哪么该如何调用呢?
例如调用第一个 ,或者是第二个。

sanhen 发表于 2008-12-2 22:49:26

$var=_IEFormElementGetValue

if $var="a" then.........

倚栏听风 发表于 2008-12-3 09:08:07

问题已经解决了。
多了一个变量。来判断当前是第几次循环,也就是第几个对象。
代码稍候会贴上来。。。 还请大家帮忙看看有什么问题没?
感觉代码多了点。。。
页: [1]
查看完整版本: IE UDF _IEFormElementRadioSelect 函数【新】问题。。请教高手。