C#Selenium:点击iframe下的按钮

时间:2015-12-22 18:36:38

标签: c# selenium automation

我的网站下有一个iframe模式。我想点击按钮     它,但我无法这样做。以下是我的代码。请告诉我     我缺少什么

driver.SwitchTo().Frame(driver.FindElement(By.Id("iframeid='frame_name'"))); 
driver.FindElement(By.Id("sendReuqest")).Click();

预期结果:按钮ID:应该点击ifRerame上的sendRequest

实际结果:找不到元素。

如果您有任何疑问,请与我们联系。

3 个答案:

答案 0 :(得分:1)

尝试这样做。我们将frame_name id设为iframe_1。无论您使用框架ID是什么,都可以添加而不是iframe_1。你也有拼写错误(拼写错误)它可能是sendRequest所以我添加为你的按钮的id。

driver.SwitchTo().Frame(driver.FindElement("iframe_1"))); 
driver.FindElement(By.Id("sendRequest")).Click();

希望它有效。请发表评论并告诉我们。

祝你好运。

答案 1 :(得分:0)

您应该在使用By.Id()时尝试使用By.CssSelector()By.Id()希望您传递一个与HTML中的ID元素匹配的参数。

driver.SwitchTo().Frame(driver.FindElement(By.CssSelector("[iframeid='frame_name']"))); 
driver.FindElement(By.Id("sendReuqest")).Click();

答案 2 :(得分:0)

尝试一下:

driver.SwitchTo().Frame("frame_name"); 
driver.FindElement(By.Id("sendReuqest")).Click();