WatiN: Как набирать текст в теле, выделенном в другом фрейме - PullRequest
0 голосов
/ 09 июня 2010

Это ссылка на редактор TinyMCE: TinyMCE

У меня есть задача: набрать текст в текстовом поле TinyMCE. Но это не текстовое поле, это Body, у которого нет метода "TypeText ();"

Пожалуйста, покажите мне пример кода, который может вводить текст в теле TinyMCE

Ответы [ 4 ]

1 голос
/ 13 апреля 2012
string js = "tinyMCE.activeEditor.setContent('tekst');";
browser.Eval(js);
1 голос
/ 04 ноября 2010

tinyMce и watin не очень хорошо играют вместе. Я обычно должен использовать комбинацию javascript (используя browser.eval) и setAttributeValue('value') из textfield объектов.

0 голосов
/ 22 июля 2011

Я был в похожем сценарии (другой редактор / та же концепция) и получил основной текст через javascript

string js = "document.getElementById('theEditor').contentWindow.document.body.innerHTML = 'Hello World!';";
myEditorPage.RichTextEditor.Eval(js);

Примечания к вышеуказанному коду

  • 'theEditor' - это идентификатор фрейма редактора.
  • myEditorPage - класс страницы, который я создал
  • RichTextEditor - это объект Frame в классе моей страницы, который соответствует идентифицированному фрейму 'theEditor'.

Работает как чемпион.

Мой сценарий

  • IE8
  • Win7
  • Watin2.0
  • Какой-то сторонний редактор, которого я не помню.
0 голосов
/ 09 июня 2010

Вы можете установить свойство Text элемента Body.

...