如何在具有text =“ display:none;”属性的textarea中发送文本通过C#和Selenium

时间:2018-07-19 10:44:04

标签: javascript c# selenium selenium-webdriver webdriverwait

我需要使用selenium中的简单sendkeys函数在textarea中进行编写。 这个textarea(ID ='txtSkillsTaught-Value')之后是一个脚本标签,其中我看不到该textarea的可见性,因此我无法编写文本。

尝试简单     driver.findelment(By.Id("txtSkillsTaught-Value")).sendkeys("text"); 甚至尝试过切换到上述iframe,但没有成功 附加了HTML代码的图片

谢谢, 艾美enter image description here

2 个答案:

答案 0 :(得分:1)

一方面,如果看不到它,可能不是个好主意。但是,另一方面,我有时需要做出类似的事情。我通常会在硒代码中发送带有javascript执行的键之前,更改此元素的可见性(我使用Java,但C#或多或少是相同的):

<Checkbox
          classes={{
                root:classes.root,
                checked:classes.checked}}
                {...props}/>

应该可以。

答案 1 :(得分:0)

根据 HTML ,您已提供<iframe>不属于<textarea>,但具有属性 style =“ display :无;” 。因此,要将字符序列发送到IWebElement element = new WebDriverWait(driver, TimeSpan.FromSeconds(10)).Until(ExpectedConditions.ElementToBeClickable(By.XPath("//td[@class='t-editable-area']//textarea[@class='t-content t-raw-content' and @id='txtSkillsTaught-value']"))); ((IJavaScriptExecutor)driver).ExecuteScript("return arguments[0].removeAttribute('style')", element); element.SendKeys("Amey"); ,可以使用以下解决方案:

<div class="NAV" id="CARDMENU">
  <div class="dropdown">
    <button class="dropbtn">
      Card
      <i class="fa fa-angle-down"></i>
    </button>
    <div class="dropdown-content">
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
      <a href="#">card</a>
    </div>
  </div>