0

我不确定如何使用 VB.NET 调用按钮单击:

<form id="form-login" style="clear: both;" name="login" method="post" action="index.php">
<p id="form-login-username">
<label for="modlgn_username">Username</label>
<input id="modlgn_username" class="inputbox" type="text" size="15" name="username">
</p>
<p id="form-login-password">
<p id="form-login-lang" style="clear: both;">
<div class="button_holder">
<div class="button1">
<div class="next">
<a onclick="login.submit();"> Login</a>
</div>
</div>
</div>
<div class="clr"></div>
<input type="submit" value="Login" style="border: 0; padding: 0; margin: 0; width: 0px; height: 0px;">
<input type="hidden" value="com_login" name="option">
<input type="hidden" value="login" name="task">
<input type="hidden" value="1" name="19c1f84e789e8862fce26aa45d57a980">
</form>

我要做的是在网页完全加载后使用这行代码调用按钮单击。一切正常,除了点击,我不知道如何获得按钮。

WebBrowser1.Document.GetElementsByTagName(" ... ").InvokeMember("click") 

我尝试了一堆东西......但没有一个有效。非常感谢任何反馈。

解决方案:

Private Sub WebBrowser1_DocumentCompleted(ByVal sender As Object, ByVal e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
    If Me.WebBrowser1.ReadyState = WebBrowserReadyState.Complete Then
        WebBrowser1.Document.GetElementById("username").SetAttribute("value", "admin")
        WebBrowser1.Document.GetElementById("passwd").SetAttribute("value", "...")
        WebBrowser1.Document.GetElementById("form-login").InvokeMember("submit")
    End If
End Sub
4

1 回答 1

0

相反,提交表单可能更容易。

Dim form As HtmlElement = WebBrowser1.Document.GetElementById("form-login")

If form IsNot Nothing Then
        form.InvokeMember("submit")
End If
于 2013-05-10T19:26:57.680 回答