【发布时间】:2012-04-21 15:19:56
【问题描述】:
如何选择一个元素,例如文本框如果我不知道它的 ID?
如果我知道它的 id,那么我可以简单地写:
HtmlAgilityPack.HtmlNode node = doc.GetElementbyId(id);
但我不知道文本框的 ID,并且在 Webbrowser 控件中可用的 HtmlagilityPack 中找不到 GetElementsByTagName 方法。 在网络浏览器控件中,我可以简单地编写:
HtmlElementCollection elements = browser[i].Document.GetElementsByTagName("form");
foreach (HtmlElement currentElement in elements)
{
}
编辑
这是我正在谈论的 HTML 表单
<form id="searchform" method="get" action="/test.php">
<input name="sometext" type="text">
</form>
请注意,我不知道表单的 ID。同一页面上可以有多个表单。我唯一知道的是“sometext”,我想只使用这个名称来获取这个元素。所以我想我将不得不一一解析所有表单,然后找到这个名称“sometext”,但我该怎么做呢?
【问题讨论】:
-
那么,html 是什么样的?可能还有其他方法。
-
@shriek 我已经编辑了我的问题,请看一下。
标签: c# webbrowser-control html-agility-pack getelementsbytagname