模拟按类别单击javascript到元素

时间:2018-01-03 01:58:35

标签: javascript c# getelementsbyclassname

我在c#中使用了execelementasync。

我想使用JavaScript也模拟点击此按钮:

<a class="btn confirm" href="#">
  <h5>
    Begin
  </h5>
</a>

我的代码:

string jsScriptB = System.Xml.Linq.XElement.Parse(@"<js><![CDATA[ document.getElementByClassName('btn confirm').click();]]></js>").Value;
            browser.ExecuteScriptAsync(jsScriptB);

我真的不确定出了什么问题,但按钮没有点击。

问题:如何使用JavaScript

单击该按钮

1 个答案:

答案 0 :(得分:0)

在Javascript document.getElementByClassName中将返回一个HtmlElement数组,因此您无法直接调用它。你需要点击一个元素

document.getElementsByClassName('btn confirm')[0] .click();

其次,你试图在你的getElementByClassName中使用2个类,它首先是无效的。

你可以更好地称之为

document.querySelectorAll('.btn,.confirm')

或者只是在你的html文档中只有一个元素时调用querySelector。以后你可以称之为

browser.Document.GetElementById(".btn,.confirm").InvokeMember("click");