0

我有一个文本框和一个按钮,当我在文本框中输入一个单词并单击按钮时,它假设在当前网页上找到该单词。

我试过这个,有时有效,有时无效,我也想知道如何在文本框中搜索“下一个”字,通常它只搜索输入的第一个字。

这是我的代码:

dim wb as webbrowser
if wb.documenttext.contains(textbox.text) then
msgbox("YES")
else
msgbox("NO")

它确实找到了一些词,但大多数时候它没有。

4

1 回答 1

0

你可以尝试这样做:

If wb.DocumentText.ToLower.Contains(TextBox1.Text.ToLower) Then
    '...
End If

或者您可以尝试遍历所有元素,如下所示:

Private Function HasTextInNode(ByVal elem As HtmlElement, ByVal txt As String) As Integer
    Dim iResult As Integer = 0

    If elem.Children.Count > 0 Then
        For Each child As HtmlElement In elem.Children
            iResult += HasTextInNode(child, txt)
        Next
    ElseIf elem.InnerText <> Nothing AndAlso elem.InnerText.ToLower.Contains(txt.ToLower) Then
        iResult += elem.InnerText.ToLower.Split(txt.ToLower).Length - 1
    End If

    Return iResult
End Function

这种情况下,该函数返回网页中元素的数量,但很容易修改。希望能帮助到你。

于 2013-01-22T12:24:03.390 回答