2014-01-24 46 views
-1

我正在創建一個程序,可以將您登錄到網站,並單擊該頁面上的按鈕。此按鈕是不是一個普通的按鈕,它可以使用這個腳本調用:如何在WebBrowser中單擊一個按鈕

WebBrowser).Document.Forms(0).InvokeMember("submit") 

時,在我的項目手動點擊該按鈕,打開一個Internet Explorer會話,並導航到該頁面。

按鈕的來源:

<form id="vform1" action="/account/vote/" method="post" target="_blank"> 
<input type="hidden" name="id" value="1"> 
<div class="cpBtn" style="height:38px; width:95px;" onclick="document.getElementById('vform1').submit();"> 
<p style="margin:11px auto;">Open WoW</p></div></form> 

我的問題:我如何點擊使用VB.net腳本,這個按鈕以及如何使其在新標籤中打開Internet Explorer,而不是。

回答

0
public partial class _Default : System.Web.UI.Page, IPostBackEventHandler 

{ 

protected void Page_Load(object sender, EventArgs e) 

{ 

div1.Attributes["onclick"] = ClientScript.GetPostBackEventReference(this, "ClickDiv"); 

} 

protected void Div1_Click() 

{ 

// Do something 

} 

#region IPostBackEventHandler Members 

public void RaisePostBackEvent(string eventArgument) 

{ 

if (!string.IsNullOrEmpty(eventArgument)) 

{ 

if (eventArgument == "ClickDiv") 

{ 

Div1_Click(); 

} 

} 

} 

#endregion 

} 

將其轉換爲VB.Net

參考:: link

0

兩種方法是:

1與部門選擇

「獲取所有部門在webbrowser1 :

Dim divs As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("div") 

「轉至spesified格,然後單擊它:

for each mydiv as Htmlelement in divs 

if (mydiv .GetAttribute("class").Tostring = "cpBtn") then mydiv.InvokeMember("Click") 

next 

2 - 用表格選擇

Dim forms As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("form") 
for each myform as Htmlelement in forms 

if (myform.GetAttribute("id").Tostring = "vform1") then myform.InvokeMember("Submit") 

next 

注:,如果你知道將在你的網頁瀏覽器只是一個形式,從而只是這樣做:

WebBrowser1.Document.GetElementsByTagName("form")(0).InvokeMember("Submit") 
相關問題