Watir Click_no_wait点击太快了吗?

时间:2012-02-27 17:02:33

标签: watir

我已使用click_no_wait点击按钮,然后使用javascript_dialog.button('OK').click点击弹出窗口中的“确定”按钮。这在所有情况下都有效,除了一个对我来说。看来click_no_wait点击太快了。

我的意思是,当我使用click_no_wait时,页面上的按钮会闪烁(就像点击一样)但弹出窗口没有出现,然后我的Watir应用程序挂起,等待弹出窗口没有弹出。如果我切换到click然后弹出窗口,但Watir应用程序挂起(正如预期的那样)。

还有其他选择吗?代码如下。 (我无法链接实际网站,它位于密码区域后面)

Ruby / Watir:

browser.button(:name => "dgPermission:_ctl"+num+":_ctl1").click_no_wait
browser.javascript_dialog.button('OK').click

HTML:

<html><body><div><table style="width:100%; height:600px;"><tr>

<td>Group Name</td>
<td><span disabled="disabled"><input id="dgPermission__ctl2_cbAdd" type="checkbox" name="dgPermission:_ctl2:cbAdd" checked="checked" disabled="disabled" /></span></td>
<td><input type="submit" name="dgPermission:_ctl2:_ctl0" value="Edit" /></td>
<td><input type="submit" name="dgPermission:_ctl2:_ctl1" value="Delete" onclick="javascript:if (!confirm('Are you sure you want to remove this permission?')) return false;" language="javascript" /></td>

</tr></table></div></body></html>

(页面可以包含多个组,因此中间部分可以包含该部分的多个部分,每个部分在dgPermission名称中具有不同的编号ID)

1 个答案:

答案 0 :(得分:0)

据我所知,click和click_no_wait之间的唯一区别是发送点击后会发生什么。

可能你可以尝试直接解雇这个事件

browser.button(:name => "dgPermission:_ctl"+num+":_ctl1").fire_event('onclick')
browser.javascript_dialog.button('OK').click