首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >watir-webdriver Watir::Exception::ObjectReadOnlyException (Watir::Exception::ObjectReadOnlyException)

watir-webdriver Watir::Exception::ObjectReadOnlyException (Watir::Exception::ObjectReadOnlyException)
EN

Stack Overflow用户
提问于 2012-02-15 16:11:28
回答 1查看 1K关注 0票数 0

各位朋友:

我的web应用程序有一个日期小部件,我正在尝试输入日期,但得到了上面的异常,我的HTML代码如下所示:

代码语言:javascript
复制
<form id="order_form" class="h" method="post" action="/order/orders/1000">
<div style="margin: 0pt; padding: 0pt; display: inline;">

</div>
<input id="order_type_description" type="hidden" value="Order" name="order[type_description]">
<fieldset>

</fieldset>
<fieldset id="simple">
<legend>Order terms</legend>
<div class="field clear">
<label class="_">&nbsp;</label>
<textarea id="order_sorder_for" rows="5" name="order[order_for]" cols="80"></textarea>
</div>
</fieldset>
<fieldset id="basic" style="display: none;">

</fieldset>
<fieldset id="change" style="display: none;">

</fieldset>
<fieldset>
<legend>Optional</legend>
<fieldset>
<div class="field clear">

</div>
<div class="field clear">
<label class="_">Range</label>
<select id="smart_date" onchange="process_date(this, true);" name="order[smart_date]">

</select>
<p class="tip"> Select . </p>
</div>
<div class="field clear">
<label class="_">Begins on</label>
<input id="order_begin_string" class="custom_date_range calendar hasDatepicker" type="text" size="30" readonly="readonly" name="order[begin_string]">
<img class="ui-datepicker-trigger" src="/images/calendar.gif" alt="..." title="...">
</div>
<div class="field clear">
<label class="_">Ends on</label>
<input id="order_end_string" class="custom_date_range calendar hasDatepicker" type="text"  size="30" readonly="readonly" name="order[end_string]">
<img class="ui-datepicker-trigger" src="/images/calendar.gif" alt="..." title="...">
</div>

如何输入日期?我正在考虑在watir代码中运行javascript,如下所示:

代码语言:javascript
复制
@@browser.execute_script("document.order_form.order_begin_string.value = 'March 01, 2011'")

但是上面的方法不起作用,我得到了下面的错误:

代码语言:javascript
复制
  document.order_form is undefined (Selenium::WebDriver::Error::UnexpectedJavascriptError)

任何帮助都是非常感谢的。非常感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-15 22:56:39

元素的定位应该使用getElementById (或类似)方法来完成。

以下代码适用于示例HTML (在Firefox中测试):

代码语言:javascript
复制
@@browser.execute_script("document.getElementById('order_begin_string').value='March 01, 2011'")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9289861

复制
相关文章

相似问题

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