如何使用 webdriver 清除 safaridriver 的文本框字段?

Posted

技术标签:

【中文标题】如何使用 webdriver 清除 safaridriver 的文本框字段?【英文标题】:How can I clear a text box field for safaridriver using webdriver? 【发布时间】:2014-11-16 14:22:41 【问题描述】:

我使用了下面这个命令,它只适用于 chrome 和 Firefox,但不适用于 safari。

driver.findElement(By.id("userEmail")).clear();

【问题讨论】:

如果 Safari 不喜欢 WebDriver,似乎一个简单的 javascript 调用应该可以工作。您收到的错误消息是什么? 我遇到了错误。 org.openqa.selenium.StaleElementReferenceException:缓存中不存在元素(警告:服务器未提供任何堆栈跟踪信息) 听起来缓存中不存在该元素。我对 webdriver 知之甚少,不知道为什么;也许您是动态添加的元素(使用 Javascript),而没有告诉 webdriver? 它适用于 Firefox 和 Chrome,但不适用于 safari 是的,我知道。你在你的问题中已经说过了。由于这是一个缓存问题,您可能需要检查“缓存”的行为方式。 【参考方案1】:

使用清除元素

function name()
  
document.getElementById('elementid').value = "";

【讨论】:

我是 Webdriver 新手,我不知道如何处理这段代码 你在使用Selenium WebDriver吗? 可以参考这个问题Clear text from textarea with selenium

以上是关于如何使用 webdriver 清除 safaridriver 的文本框字段?的主要内容,如果未能解决你的问题,请参考以下文章

使用 selenium 清除 html 输入框

webdriver 中的 close()和 quit ()区别

Selenium中WebDriver API的使用

第五章 WebDriver常用方法

webdriver清空方法

Selenium3+python3--定位到元素后如何操作元素