ID和Xpath正在更改为“确定”按钮。
HTML代码:
<div class="modal-footer" style="display: block;">
<div class="bootstrap-dialog-footer">
<div class="bootstrap-dialog-footer-buttons">
<button id="fe02d6bd-6058-4871-b0e1-c1e914f64a6a" class="btn btn- default">Ok</button>
</div>
</div>
</div>
</div>
的Xpath:.//* [@ ID = 'fe02d6bd-6058-4871-b0e1-c1e914f64a6a']
“ID”/ XPath不是常量,在保存时会发生变化。
答案 0 :(得分:0)
使用以下代码:
driver.findElement(By.cssSelector("div.bootstrap-dialog-footer-buttons>button.btn.btn-default"));
答案 1 :(得分:0)
您可以设计自己的XPath定位器,通过它的文本内容找到OK按钮,如下所示:
//button[.='Ok']
XPath表达式的第一部分 - //button
- 将选择当前焦点内容中的所有<button>
WebElements。
第二部分 - [.='Ok']
- 是一个谓词,它会过滤掉任何精确文本内容不等于'Ok'的Web元素。
答案 2 :(得分:0)
如果它是页面上唯一可用的OK按钮,那么您可以使用下面的代码。
driver.findElement(By.xpath("//button[contains(.,'Ok')]"));
否则你可以参考父窗口并在其上找到一个按钮,如下所示
WebElement modalWin = driver.findElement(By.id("modal-window-id"));
modalWin.findElement(By.xpath("//button[contains(.,'Ok')]"));
答案 3 :(得分:0)
This below code helps to click OK button in any page.
just call this method with parameter saying OK
public void buttonClick(String buttonname){
WebElemennt button = driver.findelement(by.xpath("//button[text(),'Ok']"))
or
WebElemennt button = driver.findelement(by.cssselector(".btn btn- default"))
for(int i=0; i<button.size;i++)
{
if(button.get(i).gettext().equalIgnorecase(buttonname))
{
button.get(i).click
}
}
}
Let me know result..