
我想通过软件向这个搜索框赋值,这个控件的NAME叫“REMARK” ,但是重名控件较多,无法直接指定这个控件,于是,按照如下写的代码:
Me.WebBrowser1.Document.GetElementsByTagName("REMARK").GetElementsByName("REMARK")(0).SetAttribute("value", "111111")
运行时报如下错误,请问要如何调整这段代码?


我想通过软件向这个搜索框赋值,这个控件的NAME叫“REMARK” ,但是重名控件较多,无法直接指定这个控件,于是,按照如下写的代码:
Me.WebBrowser1.Document.GetElementsByTagName("REMARK").GetElementsByName("REMARK")(0).SetAttribute("value", "111111")
运行时报如下错误,请问要如何调整这段代码?

关注让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言根据您提供的错误信息,代码中存在一个问题:`GetElementsByTagName`方法返回的是一个集合,而不是一个单个的元素。因此,在这里使用`GetElementsByName`方法会导致代码执行出错。要解决这个问题,您可以通过以下方式来赋值搜索框:
Dim elements As HtmlElementCollection = Me.WebBrowser1.Document.GetElementsByTagName("input")
For Each element As HtmlElement In elements
If element.GetAttribute("name") = "REMARK" Then
element.SetAttribute("value", "111111")
Exit For
End If
Next
这段代码的作用是先通过GetElementsByTagName("input")获取到页面上所有的input元素,然后遍历所有input元素,查找其中name属性为REMARK的元素,最后给这个元素设置值为111111。 您可以将这段代码替换原来的代码部分来实现您的需求。希望对您有帮助。