我正在使用多語言頁面,我有一個名為Upload File的按鈕

我嘗試使用 Selenium 和 JAVA 單擊該按鈕,但無論如何無法單擊它:
該按鈕有這個:
<div class="row attachment-files-item" style="display: none;">
<button type="button" class="btn btn-sm btn-link add-row">Upload File</button>
</div>
XPATH 是:
//*[@id="documentation"]/div/div[2]/div/button
我試圖做這樣的事情:
driver.findElement(By.xpath("//*[@id=\"documentation\"]/div/div[2]/div/button")).click();
它不起作用,我無法到達第二個按鈕。
我究竟做錯了什么?
編輯#1:

uj5u.com熱心網友回復:
<div class="row attachment-files-item" style="display: none;">
<button type="button" class="btn btn-sm btn-link add-row">Upload File</button>
</div>
如果你看到按鈕的父元素,它的樣式style="display: none;意味著它被隱藏在頁面上。您需要將樣式更改style="display: block;為取消隱藏。
使用 javascript 執行器來設定屬性。
ele =driver.findElement(By.xpath("//div[@class='row attachment-files-item']"));
((JavascriptExecutor) driver).executeScript("arguments[0].setAttribute('style','display:block;')", ele);
driver.findElement(By.xpath("//div[@class='row attachment-files-item']//button[text()='Upload File']")).click();
請在隱式或顯式互動時添加延遲。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/511242.html
