我正在尝试编写一个可以管理登录工作的程序。我会在我的表单中使用WebBrowser控件,但有些位置只能在IE中使用。我已经使用VBA在Excel中工作,我只是想尝试更快速的工作。
我的代码如下:
Public Sub New()
Me.name = "Name"
Me.url = "web address"
Me.log = "test"
Me.pass = "test123"
End Sub
Public Overrides Sub Login()
Me.IE = CreateObject("InternetExplorer.Application")
IE.Visible = False
IE.Navigate(Me.url)
Do While IE.ReadyState <> IE_READY.READYSTATE_COMPLETE
System.Threading.Thread.Sleep(1000)
Loop
IE.Visible = True
'here is where it breaks
IE.Document.GetElementsByName("username").SetAttribute("value", Me.log)
IE.Document.GetElementsByName("password").SetAttribute("value", Me.pass)
End Sub
一切正常,直到我尝试写入登录字段。
登录字段的HTML:
<form id="loginform" method="post" action="/Home/in">
<label for="username">Username</label>
<input type="text" class="validate[required]" name="username" id="username" disabled="disabled" value="" />
<label id="password-label" for="password">Password</label>
<input type="password" class="validate[required]" name="password" id="password" disabled="disabled" />
</form>
答案 0 :(得分:0)
请尝试以下方法:
IE.Document.GetElementsByName("username").Value= Me.log
。
IE.Document.GetElementsByName("password").Value= Me.pass
。
这可能适合你