【问题标题】:Selenium/VBA: clicking xpath using JavascriptSelenium/VBA:使用 Javascript 单击 xpath
【发布时间】:2016-07-02 12:49:31
【问题描述】:

我正在尝试执行 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>

【问题讨论】:

    标签: javascript vba excel selenium webdriver


    【解决方案1】:

    你应该尝试如下:-

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

    ele2 使用 element 位于 Xpath 的位置

    【讨论】:

    • 我必须先将“arguments[0]”部分设置为字符串变量,否则效果很好。感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2012-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-11
    • 2012-12-21
    • 2013-01-13
    • 1970-01-01
    相关资源
    最近更新 更多