我正在尝试在我的webbrowser控件中打开一个网页并更改输入字段的值。当我这样做webBrowser.Document.GetElementById("Email").SetAttribute("value", "example@example.com");
在具有已定义元素ID的页面上,但现在我遇到了一个页面,其中html / javascript看起来像这样:
<input id="${Id}" name="${Id}" type="text" class="text field" value="${Value}" title="${ToolTip}" />
所以我的问题是如何从C#代码中找到这个特定的输入字段?
答案 0 :(得分:2)
试试这个
这是一个C#编码
HtmlElement Elem = AutomationWebBrowser.Document.GetElementById('<your element ID>');
Elem.SetAttribute("value", '<value to assign in input control>');
您还可以在GetElementById和SetAttribute函数
中使用变量答案 1 :(得分:1)
您可以使用以下函数
按类名查找元素public static HtmlElement GetHTMLElementByClass(HtmlDocument document, String className)
{
foreach (HtmlElement element in document.All)
{
if (element.GetAttribute("className") == className)
{
return element;
}
}
}