C#webbrowser如何访问HtmlElement CSS类?

时间:2011-12-16 20:56:07

标签: c# webbrowser-control

我正在尝试填写网络表单。我们如何在html中访问一类HTML元素?通常我们使用此代码:

webBrowser2.Document.GetElementById

html如下:

<select class="birthday_day" name="birthday_day" >
    <option value="0">---</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
      </select>

3 个答案:

答案 0 :(得分:0)

您可能希望按名称而不是类来执行此操作,因此您可以尝试使用Document.All属性:

webBrowser2.Document.All["birthday_day"]

答案 1 :(得分:0)

考虑使用getAttribute - http://msdn.microsoft.com/en-us/library/system.windows.forms.htmlelement.getattribute.aspx CLASS和NAME都应该可用。

答案 2 :(得分:0)

古老的问题,但是由于很难找到: 如前所述,tail -f example.log | txts -n example 是答案的一部分。诀窍是使用正确的属性名称:

GetAttribute

这不是WebBrowser控件的古怪之处,而是DOM API的遗留之处,因为在JavaScript中将诸如var element = webBrowser2.Document.GetElementById("birthday_day"); var classes = element.GetAttribute("className"); // instead of just "class" 之类的关键字用作属性名称是一个巨大的问题。