7,785
社区成员




Option Explicit
Dim n As Integer
Private Sub Command1_Click()
Dim objSel As HTMLSelectElement, objDoc As HTMLDocument, objCol As IHTMLElementCollection
Set objDoc = WebBrowser1.Document
Set objCol = objDoc.getElementsByName("ddlState")
Set objSel = objCol.Item(0)
'objSel.Value = objSel.Options(1).Value
objSel.selectedIndex = 1
objSel.FireEvent "onchange" 'ddlState
Dim t As Long
t = Timer
Do
DoEvents
Set objCol = objDoc.getElementsByName("ddlProvince")
Set objSel = objCol.Item(0)
Loop While objSel.Options.length <= 1
'objSel.Value = objSel.Options(1).Value
objSel.selectedIndex = 5
objSel.FireEvent "onchange" 'ddlProvince
Do
DoEvents
Set objCol = objDoc.getElementsByName("ddlCity")
Set objSel = objCol.Item(0)
Loop While objSel.Options.length <= 1
'objSel.Value = objSel.Options(1).Value
objSel.selectedIndex = 9
objSel.FireEvent "onchange" 'ddlCity
End Sub
Private Sub Form_Load()
WebBrowser1.Navigate "http://www.yesfashion.cn/register.aspx"
End Sub
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
n = n + 1
If n = 1 Then
Dim objImg As HTMLImg, objDoc As HTMLDocument, objCol As IHTMLElementCollection
Set objDoc = WebBrowser1.Document
Set objCol = objDoc.getElementsByName("ibtnAgree")
Set objImg = objCol.Item(0)
objImg.Click
ElseIf n = 2 Then
Command1_Click
End If
End Sub
最好引用 Microsoft html object ,哪样容易些
Dim objSel As HTMLSelectElement, objDoc As HTMLDocument, objCol As IHTMLElementCollection
Set objDoc = WebBrowser1.Document
Set objCol = objDoc.getElementsByName("ddlState")
Set objSel = objCol.Item(0)
'objSel.Value = objSel.Options(1).Value
objSel.selectedIndex = 1
objSel.FireEvent "onchange"
.....
WebBrowser1.Document.getElementsByName("ddlState").Item(0).selectedIndex = 1
WebBrowser1.Document.getElementsByName("ddlState").Item(0).FireEvent "onchange"
WebBrowser1.Document.getElementsByName("ddlProvince").Item(0).selectedIndex = 1