2016-07-01 4 views
1

Я пытаюсь выполнить Javascript, чтобы щелкнуть элемент в VBA. Элемент находится в веб-приложении, которое работает только в IE Explorer. Я в настоящее время взаимодействует с элементом, используя библиотеку Селен типа со следующим кодом:Selenium/VBA: щелчок xpath с помощью Javascript

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"); 

я использовал метод «Выполнить скрипт» в библиотеке Селен типа успешно в прошлом, используя следующие:

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> 

ответ

0

Вы должны попробовать, как показано ниже: -

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

Где ele2 использует как уже нашли element, расположенный на Xpath

+0

Сначала мне нужно было установить часть «arguments [0]» в качестве строковой переменной, но в остальном она отлично работала. Спасибо за вашу помощь! –

+0

@Drew Fator вы всегда приветствуетесь ... счастливое обучение .... :) –