javascript - Selenium /VBA : clicking xpath using Javascript

标签 javascript vba excel selenium webdriver

我正在尝试执行 Javascript 以单击 VBA 中的元素。该元素位于仅在 IE 浏览器中运行的 Web 应用程序中。我目前正在使用 Selenium 类型库通过以下代码与该元素进行交互:

FindElementByXPath("//*[contains(text(), 'Revenue Report')]"

我能够成功单击该元素,但实际上没有任何反应。

我可以通过以下代码轻松完成使用 WebDriver (java) 所需的任务:

JavascriptLibrary jsLib = new JavascriptLibrary();

WebElement ele2 = driver.findElement(By.xpath("//*[contains(text(), 'Revenue Report')]"));

jsLib.callEmbeddedSelenium(driver, "triggerMouseEventAt", ele2, "click", "0,0");

我过去通过以下方法成功使用了 Selenium 类型库中的“执行脚本”方法:

ExcuteScript("document.getElementByID("element").click();")

但我不知道如何使用 xpath 使其工作。任何帮助将不胜感激。

以下是我用来定位元素的一些源代码:

<TR targetURL="/Bafaefice/TTTaefaeTT/TaefTTT/Rev/RevInput_Page1.asp?HelpURL=/WebHelp/NonMaaefnager/Sign_Onto_Back_Office.htm?Revenue_Report.htm&amp;ScreenID=RVN-002&amp;ScreenName=Revenue Report&amp;ResourceID=397600022" targetFrame="ApaefaefplicatifaonFrame" screenName="Revenue Report" screenID="RVN-002" matraApp="true"><TD class=popupMenuCell noWrap>Revenue Report</TD></TR>

<TD class=popMenCe noWrap>Revenue Report</TD>

最佳答案

您应该尝试如下:-

 ExcuteScript("arguments[0].click();",ele2)

其中 ele2 使用由 Xpath 已找到的 element

关于javascript - Selenium /VBA : clicking xpath using Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38153629/

相关文章:

vba - 根据单元格内容复制粘贴图表的宏

excel - 动态插入功能

excel - SAP BC-IC Excel 接口(interface)发送 format_string

javascript - 在 Facebook 的 Greasemonkey/tampermonkey 中使用 JavaScript 删除 CSS 边框

javascript - 当没有匹配的后代元素时隐藏父元素

javascript - 使用 jQuery 检查页面上是否存在多个不同的类

excel - 在电子表格中仅查找和保留重复项

javascript - innerHTML 和静默解码的引号

VBA - 计算两列的重复值并标记它

excel - 从一个WB复制到另一个WB时避免意大利面条式代码