问题帮助
嗨,我是Ruby和watir-webdriver的新手,我已经搜遍过,无法找到答案。
我有一个位于表格内的链接,该表格在表格顶部有一个标题,如果点击则会以数字方式对表格进行排序。在Chrome和Ie中,链接被点击正常并继续,但在Firefox中它单击标题并重新组织表,但不是链接,并且没有给出错误消息。
我尝试过xpath,regexp,表引用,:href,:text,(没有id或name字段),并且使用.flash方法我看到它查看了正确的链接,但仍然点击表格的顶部。
这是html
<thead>
<tr>
<th id="0" class="canclick" width="14%" align="left" datatype="string">
Contract #
<span id="sortIndicatorBlank"> </span>
</th>
</tr>
</thead>
<tbody>
<tr class="backD">
<td width="10%" valign="top" align="left">
<a href="/policy/clientAccountSummary.action?forwarder=ClientList&basho.menuNodeId=12801&basho.taskPanelNodeId=1261&number=015633828"> 015633828 </a>
</td>
以下是我正在使用的代码,点击Chrome和Ie中的正确链接,但不是在Firefox中
link = "015633828"
exp1 = Regexp.new link
@browser.link(:href, exp1).click
再次澄清一下:使用.flash方法,它找到了正确的链接(闪现了我想在表格中点击的链接),但在实际的.click操作中,它点击了标题的“Contract#”部分而不是链接。
我认为问题可能是表格标题是一个浮动标题,即当您向下滚动页面并且它始终位于页面顶部时它随着您一起移动,以便它始终可见。
如果您需要更多信息以澄清,请告诉我。谢谢!
答案 0 :(得分:3)
我不确定为什么会这样做,但是作为一种潜在的解决方法,你可能会尝试沿着以下几行将href值拉出链接,然后让浏览器直接转到它?
@browser.goto(@browser.link(:text, ' 015633828 ').href)
(您可能需要将网站的基本网址添加到href以使其工作,但您明白了这一点)
答案 1 :(得分:1)
或者可能尝试使用xpath:
@ browser.link。(:XPath中, “//一个[@Text = ' SomeUser是否#']”)点击
答案 2 :(得分:0)
好吧,如果您想确保点击td
标记内的链接,而不是th
标记内的链接,请尝试以下操作:
browser.td.link(:href => /someUser#/).click
提供HTML和Watir代码是件好事,但将来尝试提供真实的HTML(或尽可能真实)。 someUser#
让我很困惑,我甚至不确定我是否理解这个问题。
如果我提供的解决方案不起作用,请编辑问题以包含真实的HTML。