首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

请问关于VB提交带控件的WEB表单

2012-01-02 
请教关于VB提交带控件的WEB表单Public Sub ReferForm(ByVal Webbrowser As Webbrowser, ByVal FormType%,

请教关于VB提交带控件的WEB表单
Public Sub ReferForm(ByVal Webbrowser As Webbrowser, ByVal FormType%, Optional ByVal FormName$, Optional ByVal Value$ = "")
  'http://www.jcwcn.com/html/CSSHTML/10_43_45_931.htm
  'Text = 0; password = 1; textarea = 2; Hidden = 3; CheckBox = 4; submit = 8; button = 9
  '//
  If FormType < 0 Or FormType > 9 Then
  Exit Sub
  End If
  Dim objDoc, objTag
  Set objDoc = Webbrowser.Document
  For i = 0 To objDoc.All.length - 1
  Select Case UCase$(objDoc.All(i).tagName)
  Case "INPUT"
  Set objTag = objDoc.All(i)
  Select Case FormType
  Case 0, 1
  If objTag.Name = FormName Then
  objTag.Value = Value
  End If
  Case 3
  Case 4
If objTag.Id = FormName Then
objTag.Checked = CInt(Value) 'Click
End If
  Case 8
  If objTag.Type = FormName Then
  objTag.Click
  End If
  Case 9
  If objTag.Type = FormName Then
  objTag.Click
  End If

  '.Document.All(FormName).Value = uValue
  '.Document.All(FormName).Click
  End Select
  Case "TEXTAREA"
  Set objTag = objDoc.All(i)
  Select Case FormType
  Case 2
  objTag.Value = Value
  End Select
  End Select
  Next
  DoEvents
End Sub

网页内容:淘宝登陆页面
 <span class="safe-login">
  <input type="checkbox" id="J_SafeLoginCheck" tabindex="4"/><label for="J_SafeLoginCheck">安全控件登录</label>
  </span>

VB:
Private Sub Command1_Click()
Call ReferForm(WebBrowser1, 4, "J_SafeLoginCheck", 0)
end sub

红色部分可将网页checkbox去除选中,但我用VB提交密码时,还是不能填写进去,手动点击去除"安全控件登录"的checkbox,可以提交密码,应该是没有获得input焦点,有没有办法做到手动后的效果?想发个效果图片的,不能发

[解决办法]
个人判断多半未正确得到你想要的checkbox对象
由于webbrowser控件的自身限制很多,之前我做类似功能时一般会使用SHDocVw.dll和mshtml.dll,功能相较强大不少。

热点排行