选择动态值id下拉web浏览器c#

时间:2016-03-13 18:00:40

标签: c# html webbrowser-control

我试图通过C#中的WebBrowser选择一件衣服上的尺码。

下拉列表的HTML为:

<select id="size" name="size"><option value="32620">30</option>
<option value="32621">32</option>
<option value="32622">34</option>
<option value="32623">36</option>
</select>

正如您所看到的那样,32,34,36是大小,它们对应一个值,但是即使大小相同,这些值也会按项目更改。

要选择尺寸32我正在使用:

 webBrowser1.Document.GetElementById("size").SetAttribute("value", "32621");

这仅适用于特定项目,如何使用字符串"32"来设置大小?

1 个答案:

答案 0 :(得分:0)

您可以检查选项标记的InnerText,并检查标记的值为InnerText为“32”。 沿着这些方向做的事情可以解决问题:

HtmlElementCollection elCol = webBrowser1.Document.GetElementsByTagName("option");
foreach (HtmlElement el in elCol)
{
     if(el.InnerText == "32")
     {
          String val = el.GetAttribute("value");
          webBrowser1.Document.GetElementById("size").SetAttribute("value", val);
          break;
     }
}