VB从Web浏览器的下拉菜单中选择

时间:2017-08-29 07:42:41

标签: vb.net visual-studio

我创建了一个包含4 TextBox和1 Button的简单表单。

我试图填写网页中的表单。

我成功填写了所有正常的'文本框,但我还有一个日期和月份的下拉菜单,我不知道如何从下拉菜单中选择它。

对于普通文本,我这样做并且有效:

WebBrowser1.Document.GetElementById("id").InnerText = tz.Text$

然后我尝试了相同的下拉菜单,没有工作:

WebBrowser1.Document.GetElementById("month").InnerHtml = month.Text$

WebBrowser1.Document.GetElementById("year").InnerHtml = year.Text$

我有2个ComboBox名称' month'和'年'。

我通过检查网页上的下拉菜单检查了元素ID,但是当我从组合框中选择月份和年份并发送它时,它将填充日期表单中没有任何内容(NULL)

1 个答案:

答案 0 :(得分:0)

在按钮clieck事件中完成你的工作并首先等待网页完全加载。一些控件带有主要的html代码,其中一些是在页面加载后创建的,因此在浏览浏览器之后你应该等到它完成页面加载完全。

browser.Navigate("https://www.website.com/")
 While browser.ReadyState <> WebBrowserReadyState.Complete
            Application.DoEvents()
 End While
'use the webpage now

现在你必须找到选择框并在其中选择一个选项。

 For Each elm As Object In browser.Document.all
            If elm.Id = "idOfTheWebControl" Then
                elm.SetAttribute("value", your_value)
            End If
 Next