Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavascriptExecutor与document.evaluate xpath一起更改类名_Java_Selenium_Xpath_Selenium Webdriver - Fatal编程技术网

JavascriptExecutor与document.evaluate xpath一起更改类名

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定位

我尝试更改的Java(webdriver,selenium)中的类名 要素:

第一个选项运行良好,将第一个类“myclass”名称更改为“Clear”,但类“myclass”在许多地方,我需要使用xpath=/*[@class='myclass'][text()='mytext']

第二,我没有失败,但什么也没有发生。仍然是classname='myclass'

第三个选项:失败

我怎样才能让它工作起来 要素:

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