首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Selenium WebDriver -如何清除RadEditor内容

Selenium WebDriver -如何清除RadEditor内容
EN

Stack Exchange QA用户
提问于 2014-06-05 19:17:25
回答 2查看 3.8K关注 0票数 1

我正在编写一些使用Telerik RadEditor控件的Selenium WebDriver脚本。我可以使用RadEditor以下列方式成功地将内容输入C#:

代码语言:javascript
复制
Driver.FindElement(By.Id("Id_Of_RadEditor_Iframe")).SendKeys("Hello World!");

但我一直未能找到一种方法来清除RadEditor的现有内容。如果我尝试以下几点:

代码语言:javascript
复制
Driver.FindElement(By.Id("Id_Of_RadEditor_Iframe")).Clear();

我会得到这个错误:

代码语言:javascript
复制
OpenQA.Selenium.InvalidElementStateException: invalid element state:
Element must be user-editable in order to clear it.

有谁知道清除RadEditor中现有内容的方法吗?

有人认为这可能是Selenium WebDriver中的一个bug吗?因为我知道IFrame是可编辑的,因为我可以成功地执行SendKeys()。这似乎使错误不正确。

克里

EN

回答 2

Stack Exchange QA用户

回答已采纳

发布于 2016-09-01 18:22:34

我终于重新审视了这个问题,因为我有更多的需要来实现这一目标。下面是我实现并为我工作的“工作”:

代码语言:javascript
复制
var targetElement = Driver.FindElement(By.Id("Id_Of_RadEditor_Iframe"));
int length = targetElement.Text.Length;

for (var i = 0; i < length; i++)
{
    targetElement.SendKeys(Keys.Delete);
}
票数 0
EN

Stack Exchange QA用户

发布于 2015-02-10 15:14:57

我也有同样的问题,还没有找到答案。

作为一种解决方法,您可以使用一个循环,并且:

代码语言:javascript
复制
searchBox.sendKeys(Keys.BACK_SPACE);
票数 1
EN
页面原文内容由Stack Exchange QA提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://sqa.stackexchange.com/questions/8803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档