WebBrowser控件中的InvokeMember(“单击”)

网站显示基于表格的选项供您选择。 HTML

   

我想调用字符串“setBank(11,0,1)”的无线电点击。 我如何能? 所有无线电名称都相同,但onclick()参数不同。

在JavaScript中有人这样做了一些代码在这里,但我如何在c#中这样做

我尝试这个但从不工作:

 if (webBrowser1.DocumentText.IndexOf("setBank(11,0,1)", StringComparison.InvariantCultureIgnoreCase) > 1) { webBrowser1.Document.GetElementById("gatewayIDV").InvokeMember("click"); } 

JavaScript

 $("td.cont").each(function(index) { var $this = $(this); var gonext = true; if($this.html().search(searchStr) != -1) { $(document).BookingEngine("setAutomationRunningStatus", !tabData.automationRunning); console.log(index+":"+$this.html()+":"); $this.children("input[name='gatewayIDV']").click(); gonext = false; } return gonext; }); 

你有多个单选按钮输入,你必须循环它们,试试这个:

  private void Form1_Load_1(object sender, EventArgs e) { webBrowser1.Navigate("url"); } private void webBrowser1_DocumentCompleted_1(object sender, WebBrowserDocumentCompletedEventArgs e) { foreach (HtmlElement el in webBrowser1.Document.GetElementsByTagName("input")) { if (el.Name == "gatewayIDV") { el.InvokeMember("Click"); } } } 

编辑

对于特定的单选按钮

  private void Form1_Load_1(object sender, EventArgs e) { webBrowser1.Navigate(@"E:\Documents and Settings\Ali\Desktop\ww.html"); } private void webBrowser1_DocumentCompleted_1(object sender, WebBrowserDocumentCompletedEventArgs e) { foreach (HtmlElement el in webBrowser1.Document.GetElementsByTagName("input")) { if (el.Name == "gatewayIDV" && el.OuterHtml.Contains("setBank(11,0,1)")) { el.InvokeMember("Click"); } } }