Html 使用Watir单击表格元素

Html 使用Watir单击表格元素,html,button,onclick,html-table,watir,Html,Button,Onclick,Html Table,Watir,我想单击的JavaScript按钮,尽管它位于表中: <table> <tr> <td height="20" align="center" nowrap style="color:#0000FF; cursor:pointer; border: 1 solid #426996; background-color: #FAFAFF;" onClick="Initial();" onMouseOver="javascript:{s

我想单击的JavaScript按钮,尽管它位于表中:

<table>
  <tr>
    <td height="20" align="center" nowrap style="color:#0000FF; cursor:pointer; border: 1 solid #426996; background-color: #FAFAFF;" 
      onClick="Initial();"
      onMouseOver="javascript:{style.backgroundColor='#426996'; style.color='#FFFFFF'}" 
      onMouseOut="javascript:{style.backgroundColor='#FFFFFF'; style.color='#0000FF'}">
      <font face="Verdana, Arial, Helvetica, sans-serif" size="1"><b>&nbsp;New Incident&nbsp;</b></font>
    </td>
    <td width="4"></td>
他们的回答是错误的


我想一旦找到这个元素,我就可以使用
.fire\u事件('onClick')
。单击
,它应该可以工作,但我似乎找不到它。

您尝试单击的元素不是按钮,而是表中的单元格。更多信息:

类似的方法应该可以工作(未经测试):


更多信息:

您尝试单击的元素不是按钮,而是表中的单元格。更多信息:

类似的方法应该可以工作(未经测试):

更多信息:

将#td方法与regexp一起使用:

ie.td(:html => %r{Initial()}).click
如果可能的话,给td分配一些html ID或类属性,以使定位更容易。类似于:

<td id="mytd" ... onClick="Initial();">...</td>
ie.td(:id => "mytd").click
将#td方法与regexp一起使用:

ie.td(:html => %r{Initial()}).click
如果可能的话,给td分配一些html ID或类属性,以使定位更容易。类似于:

<td id="mytd" ... onClick="Initial();">...</td>
ie.td(:id => "mytd").click

Željko感谢您在我尝试使用上述命令时的快速响应:“irb(main):026:0>ie.element(:css=>“td[onClick=Initial();]”)。单击Nokogiri::css::SyntaxError:unexpected'Initial(“equal”之后的H:/Programming/Ruby/Ruby193/lib/Ruby/gems/1.9.1/gems/nokogiri-1.5.5-x86-mingw32/lib/nokogiri/css/parser_extras.rb:87:in
on_error”from(eval):3:in
\u racc_do_parse_c'from(eval):3:在'do_parse'ETC>>>>>>>中,我还没有进行任何其他搜索或任何其他语法。稍后我将能够进行搜索,但再次感谢。我还尝试了:ie.element(:css=>“td[onClick='Initial();']”)。单击它也不起作用。无法定位元素。由于某种原因,当我将页面保存为HTML时,我可以单击并执行任何我想执行的操作,但在“live”页面上,我无法执行任何操作。它无法定位我知道可以在HTML页面上单击的元素。虽然该页面不是“.HTML”,但它在本机上看起来像“URL/Default.cfm”?(一些会话信息)”。有什么想法吗?我最终能够使用“.元素(:text,'mytext')。单击“当我将页面保存为本地计算机上的html时,很遗憾,这对实时站点不起作用,但这是另一个需要在其他位置解决的问题。指向你@Zeljko。感谢你的快速响应,当我尝试使用上述命令时:'irb(main):026:0>ie.element(:css=>“td[onClick=Initial();]”)。单击Nokogiri::CSS::SyntaxError:unexpected'首字母('equal'后的'H:/Programming/Ruby/Ruby193/lib/Ruby/gems/1.9.1/gems/Nokogiri-1.5.5-x86-mingw32/lib/Nokogiri/CSS/parser_extras.rb:87:in
on_error'from(eval):3:in
\u racc\u do\u parse\u c'from(eval):3:在'do_parse'ETC>>>>>>>中,我还没有进行任何其他搜索或任何其他语法。稍后我将能够进行搜索,但再次感谢。我还尝试了:ie.element(:css=>“td[onClick='Initial();']”)。单击它也不起作用。无法定位元素。由于某种原因,当我将页面保存为HTML时,我可以单击并执行任何我想执行的操作,但在“live”页面上,我无法执行任何操作。它无法定位我知道可以在HTML页面上单击的元素。虽然该页面不是“.HTML”,但它在本机上看起来像“URL/Default.cfm”?(一些会话信息)”。有什么想法吗?我最终能够使用“.元素(:text,'mytext')。单击“当我在本地计算机上将页面保存为html时,不幸的是,这对live站点不起作用,但这是另一个需要在其他位置解决的问题。指向您@Zeljko。我希望我可以更改html。这会容易得多。我可以在一到两个小时后进行检查。感谢您的输入。我也尝试了这两种方法但两人都找不到按钮的位置。这让我对创建此网站的人感到愤怒。尽管通过使用html源创建我自己的页面:ie.td(:id=>“mytd”)。点击成功。不幸的是,我没有办法要求网站管理员更新代码。放置ie.td.html和放置ie.td.text的输出是什么?ie.td.html->Watir::Exception::UnknownObjectException:使用..blah ie.td.text->与之前的ie.td->#[“th”,“td”]}>我的解决方案也失败了。我希望我可以更改html。这会容易得多。我可以在一到两个小时后进行检查。感谢您的输入。我也尝试了这两种方法,但都找不到按钮的位置。这让我对创建此网站的人感到愤怒。尽管使用t创建我自己的页面html源代码:ie.td(:id=>“mytd”)。点击成功。不幸的是,我没有办法要求网站管理员更新代码。放置ie.td.html和放置ie.td.text的输出是什么?ie.td.html->Watir::Exception::UnknownObjectException:使用..blah ie.td.text->与之前的ie.td->#[“th”,“td”}>同样,我的解决方法也失败了。
ie.td(:text => /New Incident/).click