1

我想用 vb.net webbrowser 选择一个下拉值

<OPTION value=1>One</OPTION> 
<OPTION value=2>Two</OPTION>

值 1 和 2 没有引号

如果该值在引号内,例如value = "1"

然后我可以使用代码

WebBrowser1.Document.GetElementById("ID").SetAttribute("Value", "1")

但它不适用于上述情况。

提前致谢。

实际上,是否有报价并不重要。我创建了测试代码,它似乎正在工作。

For Each Frame As HtmlWindow In currentWindow.Frames
  Dim btnElementCollection As HtmlElementCollection = 
                 Frame.Document.GetElementsByTagName("Select")
    For Each curElement As HtmlElement In btnElementCollection
      Dim controlName As String = curElement.GetAttribute("id").ToString
      If controlName = TextBox2.Text Then
        curElement.SetAttribute("Value", TextBox3.Text)
      End If
    Next
Next

                                                                                     TextBox2 is the id TextBox3 is the value

抱歉,不知道为什么它第一次没有工作,感谢大家的时间。

4

2 回答 2

0

尝试将属性名称设置为大写。

<OPTION VALUE=1>One</OPTION> 
<OPTION VALUE=2>Two</OPTION>

注意“价值”现在是“价值”

于 2013-05-09T17:47:44.243 回答
0

您应该设置目标元素的 id。这应该是

GetElementById("ID") 

这个

GetElementById("element id ")

查看您的页面源以获取正确的 ID。

于 2013-06-26T09:58:40.783 回答