单击表格中的不可选择的td

时间:2017-02-10 15:35:47

标签: c# selenium automated-tests

enter image description here

我需要使用"Fonds"点击Selenium的帮助。

我尝试了以下内容:

  1. 使用XPath

    IWebElement baseTable = driver.FindElement(By.Id("id_popup_NEW_div"));
    baseTable.FindElement(By.XPath("//table/tbody/tr[./td[text()='Fonds']]")).Click();
    
  2.   

    WebDriver.dll中出现'OpenQA.Selenium.ElementNotVisibleException'类型的异常,但未在用户代码中处理   附加信息:无法单击元素

    1. 使用Action

      Actions action = new Actions(driver);
      IWebElement we = driver.FindElement(By.XPath("//table/tbody/tr[./td[text()='Fonds']]"));
      action.MoveToElement(we).MoveToElement(driver.FindElement(By.XPath("//table/tbody/tr[./td[text()='Fonds']]"))).Click().Build().Perform();
      
    2. we找不到与该元素相关的任何文字。

      注意:td有一个unselectable属性,这就是我尝试使用Action(鼠标悬停)的原因。

1 个答案:

答案 0 :(得分:1)

您可以在尝试单击它之前将其完全删除:

public void removeAttributeFromElement(WebElement element){
        String strJavaScript = "arguments[0].removeAttribute('unselectable'); return arguments[0];";
        ((JavascriptExecutor) yourSeleniumWebDriver).executeScript(strJavaScript, element);
    }