我用它在IE中加载网站:
Dim ie As Object
ie = CreateObject("InternetExplorer.Application")
ie.Navigate("http://xxxxxxx.com/login.html")
ie.Visible = True
这是在我加载页面后立即填写输入框:
ie.Document.GetElementById("email").SetAttribute("value", "my@mail.com")
当我想使用我的VB应用程序单击按钮时,问题就出现了。我在一个按钮中使用此代码:
Dim ie As Object
ie = CreateObject("InternetExplorer.Application")
ie.goback()
示例是使用IE中的后退按钮,但即使我使用ie.Document.All("Login").InvokeMember("click")
我得到(HRESULT异常:0x80004005(E_FAIL))错误。
我是否需要告诉我的命令它需要使用哪个选项卡/窗口或我缺少的其他东西?我想在使用标准Internet Explorer打开的网站上做一些事情,我现在使用的是版本11(可能这是一个问题; - ))
编辑:这是我解决点击登录按钮的方法,但我需要通过锚文本点击其他链接:(
ie.Document.GetElementById("pass").Focus()
SendKeys.Send("{ENTER}")
答案 0 :(得分:0)
您使用的方法适用于IE8及以下版本。为了与IE9到IE11一起使用,您需要添加以下代码。这将调用事件侦听器。
参考Microsoft HTML对象库。
Dim Click_it As Object
Click_it = ie.document.createEvent("HTMLEvents")
Click_it.initEvent "click", True, False
ie.document.Element_to_Click.dispatchEvent Click_it