注册 登录
编程论坛 VB.NET论坛

vb.net如何访问WebBrowser中的iframe

zsdqxzxx 发布于 2016-12-22 15:28, 2973 次点击
这是以前vb6的方法,必须引用Microsoft html object library
可是在中没有作用了
单击command1获得框架及其元素方法1
Private Sub Command1_Click()
Dim Doc2 As HTMLDocument
Dim Web2 As WebBrowser_V1
 Set Web2 = GetFrameIframeLikeUrl(WebBrowser1.Document, "*baidu.com*")
If Not Web2 Is Nothing Then
    Set Doc2 = Web2.Document
    'MsgBox "框架网页中的文字是:" & Doc2.body.innerText
End If
End Sub



方法一的自定义函数
Function GetFrameIframeLikeUrl(Vdoc As HTMLDocument, LikeUrl As String) As WebBrowser_V1

Dim Vtag, Tname As String, FrameWeb As WebBrowser_V1
For Each Vtag In Vdoc.All
        Tname = Vtag.tagName
        If Tname = "IFRAME" Or Tname = "FRAME" Then
            Set FrameWeb = Vtag
              If FrameWeb.LocationURL Like LikeUrl Then
 
                  Set GetFrameIframeLikeUrl = FrameWeb
                  Exit Function
             End If
        End If
Next
End Function



2 回复
#2
不说也罢2016-12-22 20:59
        'WebBrowser1.Navigate("https://bbs.bccn.net")——这个不多解释

       '这是一个例子,你在需要的地方用,当然例子中也可以GetElementsByID
        Dim myFrame As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("iframe")
        For i As Integer = 0 To myFrame.Count-1
            MsgBox(myFrame.Item(i).Name)'枚举iframe名称
        Next

#3
zsdqxzxx2016-12-23 10:30
谢谢,这样可以获得有几个iframe,现在问题是在iframe中有个ID为"JZGXXJLXX_addBtn"的按钮,我想单击这个按钮,用怎么实现呢?
1