【发布时间】:2016-04-21 07:06:35
【问题描述】:
我想选择 id="iframe00237" 的 iframe 和其中的数据:
这是 HTML:
<iframe src="http://example/iframe/v2.html?id=5225dddd-588a-49c2-961e-e3417cf5a728 scrolling="no" frameborder="0" marginwidth="0" marginheight="0" width="100%" height="100%" allowfullscreen="true" webkitallowfullscreen="true" mozallowfullscreen="true" id="iframe09328" class="sm_iframe"></iframe>
<body>
<div>
<iframe src="http://example.com/main?id=aab0619b-a938-4f00-b545-742fff5e1118&crtdt=1461214262& scrolling="no" frameborder="0" marginwidth="0" marginheight="0" allowfullscreen="allowfullscreen" id="iframe05443" class="sm_iframe" style="left: 0px; top: 0px; width: 730px; height: 411px;"></iframe>
</div>
<div>
<iframe src="http://example.com/main?id=5225dddd-588a-49c2-961e-e3417cf5a728& scrolling="no" frameborder="0" marginwidth="0" marginheight="0" allowfullscreen="allowfullscreen" id="iframe00237" class="sm_iframe" style="left: 0px; top: 0px; width: 811px; height: 456px;"></iframe>
</div>
</body>
Iframe src="url" url 是随机的..
我在 Stackoverflow 中找到并尝试使用代码:
//Select parent frame
IWebElement parentFrame = driver.FindElement(By.XPath("//iframe[@id='iframe09328']"));
driver.SwitchTo().Frame(detailFrame);
//Current we on detailFrame continues to go to childFrame.
IWebElement childFrame = driver.FindElement(By.XPath("//iframe[@id='iframe00237']"));
driver.SwitchTo().Frame(childFrame);
在调试模式下,parentFrame 和 childFrame 始终为 null 值。
如何解决我的问题?我也试试FindElement by ID。
【问题讨论】:
-
帧 ID 是动态的吗?
-
@pArAs 帧ID是常量。
-
您是否仅在
debug模式下遇到此问题? -
它不起作用,所以我尝试调试,frameID 始终为空。