文本框没有Value属性,如何用VB赋值
想用vb自动填写表单,如:“归属部门”的代码自动填写“00002”,但是input标签中没有value属性,vb会提示错误438,对象不支持该属性或方法。请问如何做到自动...
想用vb自动填写表单,如:“归属部门”的代码自动填写“00002”,但是input标签中没有value属性,vb会提示错误438,对象不支持该属性或方法。请问如何做到自动填写表单呢,非常感谢!
网页源码如下:
<input name="ComCode" class="codecode" size="4" description="归属部门" style="width:25%;" maxlength="8"
querytype="always" codetype="ComCode" coderelation="1" codelimit="clear"
ondblclick=" code_CodeSelectComCode(this);"
onkeyup=" code_CodeSelectComCode(this);"
onblur=" code_CodeChangeComCode(this);"
onchange=" changeComCode(this);getMaxManageFeeRate();ChengSaleBaseInfo();">
vb的代码如下:
Private Sub Command1_Click()
WebBrowser1.Document.getElementsByName("ComCode").Value = "00002"
End Sub 展开
网页源码如下:
<input name="ComCode" class="codecode" size="4" description="归属部门" style="width:25%;" maxlength="8"
querytype="always" codetype="ComCode" coderelation="1" codelimit="clear"
ondblclick=" code_CodeSelectComCode(this);"
onkeyup=" code_CodeSelectComCode(this);"
onblur=" code_CodeChangeComCode(this);"
onchange=" changeComCode(this);getMaxManageFeeRate();ChengSaleBaseInfo();">
vb的代码如下:
Private Sub Command1_Click()
WebBrowser1.Document.getElementsByName("ComCode").Value = "00002"
End Sub 展开
2个回答
展开全部
WebBrowser1.Document.getElementsByName("ComCode").Value = "00002"
改为
WebBrowser1.Document.getElementsByName("ComCode")(0).Value = "00002"
这个错误,并不是你说的“input标签中没有value属性”造成的!因为尽管没有写出value属性,但它也是存在的,也是有默认值的。真正的原因,是getElementsByName获得的是个数组(因为同一个页面是允许多个name相同的元素存在的,如果是id则只能有一个),所以如果直接在后面接上value属性就会提示“对象不支持该属性或方法”了,应该指定某个元素,如果整个页面只有一个name为“ComCode”的,则为(0)
改为
WebBrowser1.Document.getElementsByName("ComCode")(0).Value = "00002"
这个错误,并不是你说的“input标签中没有value属性”造成的!因为尽管没有写出value属性,但它也是存在的,也是有默认值的。真正的原因,是getElementsByName获得的是个数组(因为同一个页面是允许多个name相同的元素存在的,如果是id则只能有一个),所以如果直接在后面接上value属性就会提示“对象不支持该属性或方法”了,应该指定某个元素,如果整个页面只有一个name为“ComCode”的,则为(0)
追问
非常感谢你的回答。不过按照你的方法,又出现了错误提示“对象变量或with块变量未设置”,请问是为什么?
追答
Private Sub Command1_Click()
Dim cc As Object
Set cc = WebBrowser1.Document.getElementsByName("ComCode")
If cc.Length > 0 Then cc(0).Value = "00002"
Set cc = Nothing
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询