Tinymce Watin-如何设置textarea(HTML编辑器)的值?

Tinymce Watin-如何设置textarea(HTML编辑器)的值?,tinymce,textarea,watin,Tinymce,Textarea,Watin,我正在尝试使用以下代码设置textfield的值: if (ie.TextField(Find.ById("testField")).Exists) ie.TextField(Find.ById("testField")).Value = "Test"; 代码将在不引发错误的情况下传递,但是textfield中没有填充值 当我执行以下行时,我得到一个异常: ie.TextField(Find.ById("testField")).Focus() textarea是一个很小的编辑器,其中

我正在尝试使用以下代码设置textfield的值:

if (ie.TextField(Find.ById("testField")).Exists)
   ie.TextField(Find.ById("testField")).Value = "Test";
代码将在不引发错误的情况下传递,但是textfield中没有填充值

当我执行以下行时,我得到一个异常:

ie.TextField(Find.ById("testField")).Focus()
textarea是一个很小的编辑器,其中一个html属性是:
style=“display:none;”..

你知道如何使用Watin修改这样一个字段的值吗


谢谢。

第一个tinymce不是文本区。tinymce在初始化时隐藏您的文本区域,并创建一个contenteditable iframe,然后用于允许文本编辑、样式设置和。。。 其次,如果您想将编辑器内容写回隐藏的文本区域,可以使用
tinymce.get('testField').triggerSave()

另一种设置textarea值的方法是:
tinymce.get('testField').getDocumentById('testField').value='newvalue'

如果您想将内容直接写入tinymce编辑器,您可以选择以下选项之一

tinymce.get('testField').setContent('my_new_content'); // replaces the editors content


以下是使用Watin Eval函数处理此问题的简单方法:

var js = "tinyMCE.get('body').setContent('" + bodyCont + "')";
var s = ie.Eval(js);

body
”需要替换为tinymce隐藏的文本区域的id-在浏览器窗口中执行“查看源代码”以查找此id。

非常感谢。我不太确定ed.getDocumentById中的“ed”是什么意思-如何获取此元素?对于其他解决方案:如何获取tinymce对象?不能使用Watin更改“正文”文本区域。我可以使用:ie.Frame(Find.ById(“body\u ifr”)).text;--但我不知道如何修改文本?编辑器的HTML看起来像(我删除了工具栏代码):我用适当的编辑器对象替换了“ed”。初始化tinymce后,tinymce对象应为全局对象变量
var js = "tinyMCE.get('body').setContent('" + bodyCont + "')";
var s = ie.Eval(js);