我尝试在Java(webdriver,selenium)中更改类名 元素:
<span class="myclass" role="button">mytext</span>
Java代码:
((JavascriptExecutor) driver).executeScript("document.getElementsByClassName('myclass')[0].className='clearr'");
((JavascriptExecutor) driver).executeScript("document.getElementsByTagName('mytext').className='clearr'");
((JavascriptExecutor) driver).executeScript("document.evaluate('//span[@class='myclass'][text()='mytext']', document, null, XPathResult.ANY_TYPE, null).className='clearr'");
1'st选项工作正常并将1'类'myclass'名称更改为'clearr',但是'myclass'类在很多地方我需要使用xpath = // * [@ class ='myclass '] [文本()=' mytext的']
第二 - 我没有失败但没有任何反应。仍然是classname ='myclass'
第3个选项:失败
我怎样才能让它变得有用 元素:
<span class="clearr" role="button">mytext</span>
答案 0 :(得分:0)
我建议采用这种方法:
1.使用像XPATH这样的selenium定位器找到你的元素
WebElement ele = driver.findElement(By.xpath("//*[@class='myclass'][text()='mytext']");
2。然后使用JavaScriptExecutor更改该类:
((JavascriptExecutor) driver).executeScript("arguments[0].className='clearr'",element);