Javascript Selenium-使用javasacript单击按钮不工作

Javascript Selenium-使用javasacript单击按钮不工作,javascript,selenium-webdriver,Javascript,Selenium Webdriver,我有一个元素,selenium拾取为禁用。但是,它已启用。 因此,我使用javascript单击它。 下面是我使用的代码片段: IWebElement button = driver.FindElement(By.XPath(ButtonXpath)); ((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].click()", button); 当我执行这段代码时,什么也没发生。它跨过这些行,按钮(在本例中实际上是锚定)不会被点击。

我有一个元素,selenium拾取为禁用。但是,它已启用。 因此,我使用javascript单击它。 下面是我使用的代码片段:

IWebElement button = driver.FindElement(By.XPath(ButtonXpath));
((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].click()", button);
当我执行这段代码时,什么也没发生。它跨过这些行,按钮(在本例中实际上是锚定)不会被点击。 我不能使用id,因为锚没有id

我应该如何执行单击

谢谢,
Rahul

发生这种情况很可能是因为选择器错误或元件负载问题。在执行脚本之前,需要确保正确找到元素。检查选择器并在需要时使用一些显式等待

//This test works with or without the explicit wait
[Test]
public void ExecutorTest()
{
    _webDriver = new ChromeDriver();
    _webDriver.Navigate().GoToUrl("https://github.com/");
    _webDriver.Manage().Window.Maximize();

    By xpathBy = By.XPath("//a[@href='/join']");
    IWebElement element =
        new WebDriverWait(_webDriver, TimeSpan.FromSeconds(10))
        .Until(ExpectedConditions.ElementExists(xpathBy));

    ((IJavaScriptExecutor)_webDriver).ExecuteScript("arguments[0].click();", element);

    _webDriver.Quit();

}