2014-04-15 60 views
0

我試圖使用Selenium WebDriver單擊在頁面上提交表單後出現的模式中的「確定」按鈕。無法使用Selenium WebDriver在JavaScript模式中單擊元素

Driver.SwitchTo().Alert()失敗,切換窗口句柄也會失敗。我也試過Driver.SwitchTo().ActiveElement()但也失敗了。在打開模式的按鈕被點擊之前,驅動程序仍然識別頁面上的元素,所以我知道它絕對不會被切換,這使Xpath和CssSelector在此期間無用。

我試過切換瀏覽器,但沒有效果。

<div id="confirmModal" class="modal fade"> 
<div class="modal header"> 
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">x</button> 
<h3 id="myModalLabel">Confirmation</h3> 
</div> 
<div class="modal-body"> 
<p>Confirm?</p> 
<div class="alert alert-block"> 
<p> Are you sure? You can not undo this </p> 
</div> 
</div> 
<div class="modal-footer"> 
<input type="button" class="btw" data-dismiss="modal" value="Cancel" aria-hidden="true"> 
<input type="button" value="OK" id="confirmation-submit" class="btn btw-primary"> 
</div> 

</div> 

任何建議將有所幫助 - 謝謝!

回答

0

我已經解決了一個非常類似的問題對你用下面的代碼:

new WebDriverWait(driver, TimeSpan.FromSeconds(10)).Until(ExpectedConditions.ElementIsVisible(okButton_id)); 
IWebElement okButton = driver.FindElement(By.Id(okButton_id)); 
okButton.Click(); 
相關問題