JavascriptExecutor与document.evaluate xpath一起更改类名
我尝试更改的Java(webdriver,selenium)中的类名 要素: 第一个选项运行良好,将第一个类“myclass”名称更改为“Clear”,但类“myclass”在许多地方,我需要使用xpath=/*[@class='myclass'][text()='mytext'] 第二,我没有失败,但什么也没有发生。仍然是classname='myclass' 第三个选项:失败 我怎样才能让它工作起来 要素:JavascriptExecutor与document.evaluate xpath一起更改类名,java,selenium,xpath,selenium-webdriver,Java,Selenium,Xpath,Selenium Webdriver,我尝试更改的Java(webdriver,selenium)中的类名 要素: 第一个选项运行良好,将第一个类“myclass”名称更改为“Clear”,但类“myclass”在许多地方,我需要使用xpath=/*[@class='myclass'][text()='mytext'] 第二,我没有失败,但什么也没有发生。仍然是classname='myclass' 第三个选项:失败 我怎样才能让它工作起来 要素: mytext 我建议采用这种方法: 1.使用诸如XPATH之类的selenium定位
mytext
我建议采用这种方法:1.使用诸如XPATH之类的selenium定位器定位元素
WebElement ele = driver.findElement(By.xpath("//*[@class='myclass'][text()='mytext']");
二,。然后使用JavaScriptExecutor更改该类,如下所示:
((JavascriptExecutor) driver).executeScript("arguments[0].className='clearr'",element);
可能
var all=document.getElementsByClassName('myclass');var i=0;而
<span class="clearr" role="button">mytext</span>
WebElement ele = driver.findElement(By.xpath("//*[@class='myclass'][text()='mytext']");
((JavascriptExecutor) driver).executeScript("arguments[0].className='clearr'",element);