单击html按钮
本文关键字:按钮 html 单击 | 更新日期: 2023-09-27 18:00:06
这是我试图点击的按钮:
<td class="dark" onclick="document.getElementById('id').value = '0'; document.getElementById('form').submit()">
test
</td>
我尝试了使用Winform WebBrowser控件点击该元素的代码:
HtmlElementCollection links = webBrowser1.Document.Links;
foreach (HtmlElement link in links)
{
if ((link.InnerText != null) && (link.InnerText.Equals("test")))
link.InvokeMember("Click");
}
它点击链接,但不是像我上面发布的那样点击按钮。我也尝试过不同的方法:
if (curElement.GetAttribute("id").Equals("0"))
{
curElement.InvokeMember("click");
}
从WebBrowser控件单击该表单元格的正确方法是什么?
问题是,您所称的"链接"不是WebBrowser中的链接,而是一个所谓的表单元格,它在html中表示为<td>
标记,这里对此进行了解释。这就是为什么在document.links
集合上迭代时找不到要查找的内容。
您可以在webbrowsercontrol的Document属性上使用另一个方法来获取特定标记名的列表GetEelementsByTagName。这只会给你<td>
。使用一个简单的if,您可以检查是否到达了正确的<td>
,然后对元素调用RaiseEvent以调用所需的行为。
foreach (HtmlElement td in this.webBrowser1.Document.GetElementsByTagName("td"))
{
Debug.WriteLine(td.InnerText);
if (td.InnerText.Equals("test"))
{
td.RaiseEvent("onclick");
}
}