hym38 发表于 2014-4-6 20:43:44

请教一个web界面无name 无id 的按钮提交方法。

http://elearning.cgbchina.com.cn 提交按钮无name 无id ,连按钮貌似也是在css文件中定义了。。
研究了很久,也翻查了论坛的历史帖子,也找不到相应的好方法。
请指教!

hym38 发表于 2014-4-6 21:23:23

我用以下方法,已经可以把值填到input中了,但每次都无法正常提交。页面闪了一下,input中的内容就没了。
Func Example2()
   Local $oIE=_IECreate("http://elearning.cgbchina.com.cn", 1, 1, 1,0)
   _IELoadWait($oIE)
   Local $oForm = _IEFormGetCollection($oIE,0)
   Local $oText = _IEGetObjById($oForm, "x-auto-0-input")
   _IEFormElementSetValue($oText, "admin")
   Sleep(2000)
   Local $oText2 = _IEGetObjById($oForm, "x-auto-1-input")
   _IEFormElementSetValue($oText2, "123456")
   Sleep(2000)
   _IEFormSubmit($oForm)
   _IELoadWait($oIE)

EndFunc

cxlater 发表于 2014-4-6 23:24:50

确实没有办法   本想获取button对象集合 然后去click的还是不行

绿色风 发表于 2014-4-7 07:56:56

本帖最后由 绿色风 于 2014-4-7 08:54 编辑

找到js,在js中找表单,post

你搞自动点击,还以为是post



#include <IE.au3>

Local $oIE=_IECreate("http://elearning.cgbchina.com.cn", 1, 1, 1,0)
   _IELoadWait($oIE)
   Local $oForm = _IEFormGetCollection($oIE,0)
   Local $oText = _IEGetObjById($oForm, "x-auto-0-input")
   _IEFormElementSetValue($oText, "admin")
   Sleep(2000)
   Local $oText2 = _IEGetObjById($oForm, "x-auto-1-input")
   _IEFormElementSetValue($oText2, "123456")
   Sleep(2000)

;;;;;;这里,是点那个登陆按钮的   按钮的ID submitbtn
Local $oText3 = _IEGetObjById($oForm, "submitbtn")
   _IEAction ($oText3, "click")
   _IELoadWait($oIE)

cxlater 发表于 2014-4-7 23:14:06


#include <ie.au3>
Local $oIE=_IECreate("http://elearning.cgbchina.com.cn", 1, 1, 1,0)
Local $oForm = _IEFormGetCollection($oIE,0)
$user = _IEGetObjById($oIE , "x-auto-0-input")
$psd = _IEGetObjById($oIE , "x-auto-1-input")
$btn = _IEGetObjById($oIE, "submitbtn")
$user.value = "admin"
$psd.value = "123456"
_IEAction ($btn, "click")
;~$btn.click


为什么不可以用.click属性呢用 _IEAction可以点击

绿色风 发表于 2014-4-8 07:29:57

回复 5# cxlater


    好像就是表单框架的原因
不在一个表

frontow 发表于 2014-4-12 15:59:10

_IEFormSubmit函数,简单,粗暴{:face (355):}

dingzz3 发表于 2020-11-26 16:31:45

学到了 谢谢
页: [1]
查看完整版本: 请教一个web界面无name 无id 的按钮提交方法。