gpt4 book ai didi

c# - WebBrowser 控件中的 InvokeMember ("click")

转载 作者:行者123 更新时间:2023-11-28 20:33:13 25 4
gpt4 key购买 nike

网站显示了一个基于表格的选项供选择。 HTML

<td width="33%" class="cont"><input type="radio" name="gatewayIDV" onclick="setBank(11,0,1)">
<td width="33%" class="cont"><input type="radio" name="gatewayIDV" onclick="setBank(3,0,1)">

我想调用字符串“setBank(11,0,1)”单选按钮的单击。我如何能?所有 radio 名称都相同,但 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");
}
}
}

关于c# - WebBrowser 控件中的 InvokeMember ("click"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15954739/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com