我正在使用我的vb.net应用程序将文本框和按钮放在我的表单中使用webbrowser。我从网页上获取元素ID时遇到问题。当我将文本放在文本框中并单击表单按钮时,我将收到一个错误:对象引用未设置为对象的实例。
这是html来源:
<button value="1" class="_42ft _4jy0 _11b _4jy3 _4jy1 selected" type="submit">Post</button>
以下是我使用的代码:
WebBrowser1.Document.GetElementById("_42ft _4jy0 _11b _4jy3 _4jy1 selected").InvokeMember("click")
您知道我如何点击网页中已获得班级ID的按钮吗?
答案 0 :(得分:0)
您的按钮有一个类,而不是ID,但您的代码正在尝试按ID找到它。将您的按钮更改为:
<button value="1" id="_42ft _4jy0 _11b _4jy3 _4jy1 selected" type="submit">Post</button>
或者如果你想通过类获取它,请使用getElementsByClassName(&#34;&#34;),但这将返回该类的所有按钮的集合。这意味着您必须知道类名是否超过1。你按索引得到按钮,所以:
var btn = document.getElementsByClassName("_42ft _4jy0 _11b _4jy3 _4jy1 selected");
btn[0].click();
0是第一个,1是第二个,依此类推