请教IE里的按钮怎么点击提交(已解决)
本帖最后由 qweritot 于 2012-6-5 10:46 编辑使用post方法解决了。
网页表单如下:
我能够用下面的代码输入文本,就是没办法提交,求解答。
$ID = _IEGetObjById ($oie, "username")
$ID.value = "id"
$ID = _IEGetObjById ($oie, "password")
$ID.value = "pwd" 怎么提交的呢?用的是什么命令? 按钮没有name也没有id,不知道怎么办 先用这个试试_IEFormSubmit($oForm),当然先要取得form的对象。
不行的话,再用这个利器,可取得任何标签的对象 _IETagNameGetCollection 还是不行啊,挨个元素都试了,还是不能提交。
$oElements = _IETagNameAllGetCollection ($oie)
For $oElement In $oElements
MsgBox(0, "Element Info", "Tagname: " & $oElement.tagname & @CR & "innerText: " & $oElement.innerText)
_IEFormSubmit($oElement)
Next 本帖最后由 shqf 于 2012-6-1 14:44 编辑
看一下网页源码,如此为第1个form,就用下句提交。如为第2 个form,则将0改为1,以此类推。
$oForm=_IETagNameGetCollection($oIE,"form",0)
_IEFormSubmit($oForm)
如不行再用模拟点击的方法(下句假设那个登录的input标签为网页中第11 个input):
$oSubmit=_IETagNameGetCollection($oIE,"input",10)
$oSubmit.click。
至于究竟为第几个input你可用_IETagNameAllGetCollection及$oElement.value来查看。 网页中只有一个form,0,1都试了提交不了
模拟点击的方法也试了,网页中只有4个input,从0到4我都试了,也还是不行
谢谢啊,您真热心 是指input在整个网页源码中的第几个。你上面提供的仅是一部分,就有4 个input了,整个网页源码中的input会不止4个吧。_IETagNameGetCollection($oIE,"input",10)此句中的对象是$oIE,是整个文档(InternetExplorer.Application )的对象啊。你多看看帮助吧.要不,是外网就上地址,内网上源码吧。 本帖最后由 qweritot 于 2012-6-5 10:47 编辑
确实只有4个 本帖最后由 qweritot 于 2012-6-5 10:48 编辑
为什么是10呢 有form的。 最后加一句_IEFormSubmit ($oForm,0) 你手工提交正常吗? 手工提交正常。
10也不行啊,我从0一直测试到15,都不行。测试代码如下:
For $i=0 To 15
$oSubmit=_IETagNameGetCollection($oie,"input",$i)
_IEFormSubmit($oSubmit)
MsgBox(0, "Element Info", "i= " & $i)
Next
页:
[1]