使用vb.net如何在选择下拉列表中获取所有选项(Webbrowser)

用户名

我正在尝试动态获取网页上下拉菜单中的所有选项。

    <select name="ctl00$ctl00$Content$contentMain$Home1$ReportFilter$drpGroup" id="ctl00_ctl00_Content_contentMain_Home1_ReportFilter_drpGroup">
    <option selected="selected" value="-1">[select group]</option>
    <option value="0">[all groups]</option>
    <option value="2103">Alpha Phi Omega Students</option>
    <option value="2319">ART 480</option>
    <option value="2352">ENGL 111 - W14</option>
    <option value="2184">Lambda Pi Eta Group (Communication Honorary Society)</option>
    <option value="2093">ME and SW Students</option>
    <option value="2130">MGT 351 Students </option>
    <option value="2285">MGT MKT 451 </option>
    <option value="2313">NURS 101 W14</option>
    <option value="2282">Nursing 480 Students</option>
    <option value="2063">Presentation Faculty</option>
    <option value="2051">Presentation Students</option>
    <option value="2101">Roberts Fellows Students</option>
    <option value="2094">Students 101 Nursing</option>
    <option value="2320">SW 215 </option>
    <option value="2309">TE Students</option>

</select></div>

在我的代码中,我知道如果知道价值,就可以选择每个

For Each element As HtmlElement In WebBrowser1.Document.GetElementsByTagName("select")
                If element.GetAttribute("name") = "ctl00$ctl00$Content$contentMain$Home1$ReportFilter$drpGroup" Then

                   element.SetAttribute("value", "2103") 'Replace 2103 with whatever you want
                End If

            Next

如何在设置属性之前获取所有值并将其放入集合或数组中

吉米·D

我会使用正则表达式来做到这一点:

导入以下内容:

Imports System.Text.RegularExpressions

声明以下变量:

Dim text1 As String = ""
Dim text2 As String = ""
Dim text3 As String = "</option>"
Dim SelectId As String = "ctl00_ctl00_Content_contentMain_Home1_ReportFilter_drpGroup" 'Change to the Select element ID

记住将SelectId变量更改为选择ID

添加以下功能:

Public Sub Process()
    Dim txt As String = text1
    Dim re1 As String = "(<OPTION)"
    Dim re2 As String = ".*?"
    Dim re3 As String = "(<\/OPTION>)"
    Dim r1 As Regex = New Regex(re1 + re2 + re3, RegexOptions.IgnoreCase Or RegexOptions.Singleline)
    Dim m1 As Match = r1.Match(txt)
    If (m1.Success) Then
        text2 = m1.ToString
        text1 = text1.Replace(m1.ToString, "")
    End If
    Dim txt2 As String = text2
    Dim re4 As String = "(>)"
    Dim re5 As String = ".*?"
    Dim re6 As String = "(<)"
    Dim r2 As Regex = New Regex(re4 + re5 + re6, RegexOptions.IgnoreCase Or RegexOptions.Singleline)
    Dim m2 As Match = r2.Match(txt2)
    If (m2.Success) Then
        Dim optionValue As String = m2.ToString.Replace(">", "")
        optionValue = optionValue.Replace("<", "")
        If optionValue = text3 Then
            Exit Sub
        Else
            text3 = optionValue
            TextBox1.Text &= optionValue & Environment.NewLine
            'Or ListBox1.Items.Add(optionValue)
            Process()
        End If
    End If
End Sub

现在,假设您有一个按钮,单击该按钮时,它将在TextBox1中列出选项值

 Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    Dim txt As String = WebBrowser1.Document.Body.OuterHtml
    Dim re2 As String = "(id)"
    Dim re3 As String = "(=)"
    Dim re4 As String = "(" & SelectId & ")"
    Dim re5 As String = ".*?"
    Dim re8 As String = "(<\/SELECT>)"
    Dim r As Regex = New Regex(re2 + re3 + re4 + re5 + re8, RegexOptions.IgnoreCase Or RegexOptions.Singleline)
    Dim m As Match = r.Match(txt)
    If (m.Success) Then
        text1 = m.ToString
    End If
    Process()
End Sub

它与我合作!尝试让我知道。我的资源:视觉基础教程

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用jQuery从AJAX生成的选择下拉列表中获取文本选项?

来自分类Dev

在vb.net中,设置带有文本值的下拉列表后,如何获取所选值

来自分类Dev

如何在asp.net中使用jQuery获取下拉列表选择的值绑定?

来自分类Dev

如何使用 getAllSelectedOptions 从多个下拉列表中获取选定的选项

来自分类Dev

如何使用aspose从单元格中获取所有下拉列表(listBox)的值

来自分类Dev

如何使用aspose从单元格中获取所有下拉列表(listBox)的值

来自分类Dev

如何从选择选项下拉列表中获取值并在switch语句中使用该值

来自分类Dev

VB使用日期选择

来自分类Dev

如何在Angular 9中使用带有选定值的选择下拉列表

来自分类Dev

vb.net使用htmlagilitypack获取所有属性值

来自分类Dev

使用ASP.net C#从html选择列表中获取所有项目

来自分类Dev

如何保持所选项目显示在下拉列表中VB.Net

来自分类Dev

如何使用jQuery设置选择下拉列表的“选择的选项”

来自分类Dev

如何在vb脚本中使用SendKeys方法选择页面上的所有内容?

来自分类Dev

如何多次使用下拉列表中的选项

来自分类Dev

如何在Python中使用Selenium从站点下载多个文件以选择下拉列表的每个选项

来自分类Dev

使用反射将类中的所有静态属性作为对象获取VB.NET

来自分类Dev

使用JQuery在选择/选项下拉列表中更改现有值

来自分类Dev

如何使用Ruby获取Selenium Webdriver中下拉菜单的所有选项的文本?

来自分类Dev

如何使用VB.NET在JSON的值中获取值

来自分类Dev

如何在VB.NET或C#中使用具有两个不同值的xml从xml中填充下拉列表,同时使用定界符将它们连接在一起

来自分类Dev

如何使用python从HTML下拉列表中的选定选项中获取值?(烧瓶)

来自分类Dev

如何在“选择”下拉列表中获取选定的选项值

来自分类Dev

vb.net并使用SQLite

来自分类Dev

如何在没有使用Selenium的<Select>标签的情况下选择下拉选项

来自分类Dev

如何使用 Angular 中的反应形式获取选择选项下拉文本值

来自分类Dev

如何在VB.NET,WinForms中制作和使用标签列表?

来自分类Dev

如何让程序使用VB.NET中的所有CPU电源?

来自分类Dev

如何使用 JavaScript 获取 HTML 下拉列表中每个选项的长度

Related 相关文章

  1. 1

    如何使用jQuery从AJAX生成的选择下拉列表中获取文本选项?

  2. 2

    在vb.net中,设置带有文本值的下拉列表后,如何获取所选值

  3. 3

    如何在asp.net中使用jQuery获取下拉列表选择的值绑定?

  4. 4

    如何使用 getAllSelectedOptions 从多个下拉列表中获取选定的选项

  5. 5

    如何使用aspose从单元格中获取所有下拉列表(listBox)的值

  6. 6

    如何使用aspose从单元格中获取所有下拉列表(listBox)的值

  7. 7

    如何从选择选项下拉列表中获取值并在switch语句中使用该值

  8. 8

    VB使用日期选择

  9. 9

    如何在Angular 9中使用带有选定值的选择下拉列表

  10. 10

    vb.net使用htmlagilitypack获取所有属性值

  11. 11

    使用ASP.net C#从html选择列表中获取所有项目

  12. 12

    如何保持所选项目显示在下拉列表中VB.Net

  13. 13

    如何使用jQuery设置选择下拉列表的“选择的选项”

  14. 14

    如何在vb脚本中使用SendKeys方法选择页面上的所有内容?

  15. 15

    如何多次使用下拉列表中的选项

  16. 16

    如何在Python中使用Selenium从站点下载多个文件以选择下拉列表的每个选项

  17. 17

    使用反射将类中的所有静态属性作为对象获取VB.NET

  18. 18

    使用JQuery在选择/选项下拉列表中更改现有值

  19. 19

    如何使用Ruby获取Selenium Webdriver中下拉菜单的所有选项的文本?

  20. 20

    如何使用VB.NET在JSON的值中获取值

  21. 21

    如何在VB.NET或C#中使用具有两个不同值的xml从xml中填充下拉列表,同时使用定界符将它们连接在一起

  22. 22

    如何使用python从HTML下拉列表中的选定选项中获取值?(烧瓶)

  23. 23

    如何在“选择”下拉列表中获取选定的选项值

  24. 24

    vb.net并使用SQLite

  25. 25

    如何在没有使用Selenium的<Select>标签的情况下选择下拉选项

  26. 26

    如何使用 Angular 中的反应形式获取选择选项下拉文本值

  27. 27

    如何在VB.NET,WinForms中制作和使用标签列表?

  28. 28

    如何让程序使用VB.NET中的所有CPU电源?

  29. 29

    如何使用 JavaScript 获取 HTML 下拉列表中每个选项的长度

热门标签

归档