簡體   English   中英

如何模擬網頁按鈕單擊代碼

[英]How to simulate Web page button click in code

我試圖模擬程序中的按鈕單擊,以便從服務器獲得響應。 問題是網頁“ onclick”激活該頁面中的腳本

html看起來像這樣:

<script language=javascript>
    function frmsubmit(id)
    {
        document.all("HistoryData1_hiddenID").value=id;
        document.all("Form1").submit();  
    }
</script>
<input type="button" id="btnGo" value="Go" Class="RegularButton" onclick="frmsubmit('0')" >

我使用了我看到的這段代碼:

WebBrowser wb = new WebBrowser();
wb.Navigate(url);
while (wb.ReadyState != WebBrowserReadyState.Complete)
{
    Application.DoEvents();
}
wb.Document.GetElementById("btnGo").InvokeMember("click");

什么都沒發生。 在真實的網頁中,我得到了一個包含所需數據的html。 有任何想法嗎?

你可以像這樣使用jQuery

$("#btnGo").click();

在您的.cs文件中,您將像

StringBuilder sb = new StringBuilder();
sb.AppendLine("$(document).ready(function() {");
sb.AppendLine("$('#btnGo').click();");
sb.AppendLine(" });");
Page.ClientScript.RegisterStartupScript(this.GetType(), "Script", sb.ToString(), true);

就是這樣,當然您必須將jQuery庫添加到html頁面

嘗試致電doPostBack

__doPostBack("btnGo', '<event argument here>');

http://wiki.asp.net/page.aspx/1082/dopostback-function/

使用jQuery trigger()函數(或triggerHandler ,取決於您的目的)。

$('#<%=btnGo.ClientID%>').trigger('click');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM