在WebBrowser控件中, 网页中的控件,是一个button,但没有 id或者name,请问如何提交它(点击它)。
网页的代码是:
<input class="button" type="button" value="提交" onclick="check(this)" />。
新手,最好给段代码,谢谢!

解决方案 »

  1.   

    法一:
    getElementsByTagName("button")(0),如果页面只有一个button标签那么直接用0,否则的话自己分析看是第几个法二:
    getElementsByClassName("pn vm")(0),分析同上。firefox平台才有这个方法法三:
    这样的一般都放在表单里面的,表单一般都有id或者name的,直接用 表单.submit即可。法四:
    遍历所有的标签,用if x.type以及x.classname判断是否是你需要的。 我提供的4种方法尽量选择定位准的。一般优先根据id其次name,再其次就是标签名称(+索引位置,稳定性差稍一变化就挂了),最后是所有标签遍历(费时费力)请参考:
    http://topic.csdn.net/u/20110218/13/e6b2a94c-1690-487f-85d0-0c16ec80d632.html
      

  2.   

    能不能通过那个,value="提交" 来识别控件呢 ,只有这个在页面上是唯一的
      

  3.   

    可以啊,你没有认真看那个帖子啊。
    31L和35LFor i = 0 To ie.document.all.length - 1 Set vTag = ie.document.all(i)
    If vTag.value="提交" Then  
    vTag.Click
    exit for
    End IfNext i仔细看看那个帖子,多看多思考。
      

  4.   

    Dim vTag As Object
    Dim i As IntegerFor i = 0 To vDoc.all.length - 1
    MsgBox vDoc.all.length
    Set vTag = vDoc.all(i)
    If vTag.Value = "提交" Then
    vTag.Click
    Exit For
    End If
    Next i怎么提示对象不支持该属性和方法呢,忘记说了 我是vba环境
      

  5.   

    vDoc是webbrowser控件的name吗?如果是,应该这样使用  vDoc.document.all.length
      

  6.   


    For i = 0 To Webbrowser1.Document.all.length - 1
    Set vTag = Webbrowser1.Document.all(i)
    If vTag.Value = "提交" Then
    vTag.Click
    Exit For
    End If
    Next i