在按钮上单击,在Internet Explorer中出现一个弹出窗口,该窗口呈现一个html(如下所示),我意识到此HTML位于更新面板中,也就是说我无法在其上找到任何控件/元素。我确定我的代码可以切换到子窗口(弹出窗口),但无法找到弹出窗口的元素。
我怎么知道如何控制切换到子窗口?
foreach (String windowHandle in handles)
{
if (!windowHandle.Equals(parentWindow))
{
objDriver.SwitchTo().Window(windowHandle);
//trying to find element is always null on popup window
IWebElement table = objDriver.FindElement(By.TagName("table"));//this is null
//closing child window, this works fine
objDriver.Close();
}
}
像这样创建更新面板
<div class="ctl00_updatePanel">
<div class="test">
<div>
<table id="tbl">
<tr>
<td>
<a href="#">text 1</a>
</td>
<td>
<tr>
<tr>
<td>
<a href="#">text 2</a>
</td>
<td>
<tr>
</table>
</div>
</div>
</div>
当我尝试在此窗口中找到任何控件时,它总是显示未找到元素并中断。
我已经为元素to wait
添加了to load
,但是尽管元素已正确加载到子窗口中,但是仍然无法显示元素未找到的信息。