[英]C# Selenium - Click on a popup button
I want to Click on the Below popup Message button but even tho i placed the ID correctly, it doesnt get clicked.我想点击下面的弹出消息按钮,但即使我正确放置了 ID,它也没有被点击。 Throws No such Element Found Exception.抛出 No such Element Found 异常。
webDriver.Navigate().GoToUrl(url);
try
{
await Task.Delay(1000);
Logger.LogGenericText("Trying to Removed all Nicknames Cache...");
webDriverwait.Until(d => d.FindElement(By.ClassName("namehistory_link"))).Click();
webDriverwait.Until(d => d.FindElement(By.Id("NamePopupClearAliases"))).Click();
webDriverwait.Until(d => d.FindElement(By.Id("btn_green_white_innerfade"))).Click();
}
catch (Exception ex)
{
Logger.LogGenericText(ex.ToString());
return;
}
Ok so, Did some digging in the Driver Functions.好的,对驱动程序功能进行了一些挖掘。 This solved my issue.这解决了我的问题。
webDriver.SwitchTo().ActiveElement().FindElement(By.XPath("/html/body/div[3]/div[2]/div/div[2]/div[1]/span")).Click();
Full working Code incase if anyone couldn't understand:完整的工作代码,如果有人不明白:
webDriver.Navigate().GoToUrl(url);
try
{
await Task.Delay(1000);
Logger.LogGenericText("Trying to Removed all Nicknames Cache...");
webDriverwait.Until(d => d.FindElement(By.ClassName("namehistory_link"))).Click();
await Task.Delay(2000);
webDriverwait.Until(d => d.FindElement(By.XPath("//*[@id='NamePopupClearAliases']"))).Click();
await Task.Delay(2000);
webDriver.SwitchTo().ActiveElement().FindElement(By.XPath("/html/body/div[3]/div[2]/div/div[2]/div[1]/span")).Click();
Logger.LogGenericText("All Nickname List Cleared.");
}
catch (Exception ex)
{
Logger.LogGenericText(ex.ToString());
return;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.