2

我无法使用browser.text_field(:id,"area").set "1=1". 当我手动输入时,我注意到我输入的文本(“1 = 1”)跨跨度存储,如下所示。

<pre>
<span class="number">1</span> # the text 1 is stored here and followed by "=1" in next spans
<span class="operator">=</span>
<span class="number">1</span>
</pre>

有没有其他方法可以将文本设置到文本区域?

4

2 回答 2

1

这对我有用:

require "watir-webdriver"
browser = Watir::Browser.new
browser.goto "ideone.com"
browser.div(:id => "file_div").textarea.set "1=1"

您确定需要在 textarea 中设置文本吗?如果您正在处理所见即所得的编辑器,您可能需要使用send_keys

browser.pre.send_keys "1=1"

更多信息:http ://watirwebdriver.com/wysiwyg-editors/

于 2013-03-13T12:25:33.077 回答
0

在适当的元素上发送密钥很重要。就我而言,经过一些实验,那是:

<div class="redactor_text redactor_optional redactor_redactor redactor_editor" contenteditable="true" dir="ltr" style="min-height: 120px;"></div>

编辑器是用这个 html 定义的:

<div class="redactor_box"><ul class="redactor_toolbar" id="redactor_toolbar_0"><li><a href="javascript:;" title="Bold" tabindex="-1" class="re-icon re-bold"></a></li><li><a href="javascript:;" title="Italic" tabindex="-1" class="re-icon re-italic"></a></li><li><a href="javascript:;" title="Underline" tabindex="-1" class="re-icon re-underline"></a></li><li><a href="javascript:;" title="Link" tabindex="-1" class="re-icon re-link"></a></li><li><a href="javascript:;" title="Superscript" tabindex="-1" class="re-icon re-superscript fa-redactor-btn"><i class="fa icon-superscript"></i></a></li><li><a href="javascript:;" title="Subscript" tabindex="-1" class="re-icon re-subscript fa-redactor-btn"><i class="fa icon-subscript"></i></a></li></ul><div class="redactor_text redactor_optional redactor_redactor redactor_editor" contenteditable="true" dir="ltr" style="min-height: 120px;"></div><textarea class="text optional redactor" data-limit="450" data-persist="garlic" data-min-height="120" name="lesson[intro]" id="lesson_intro" dir="ltr" style="display: none;"></textarea></div>

于 2016-03-28T19:09:12.580 回答