Я использовал click_no_wait
, чтобы нажать кнопку, а затем javascript_dialog.button('OK').click
, чтобы нажать кнопку "ОК" в появившемся всплывающем окне. Это сработало во всех ситуациях, кроме одной для меня. Похоже, click_no_wait
щелкает слишком быстро.
Под этим я подразумеваю, что когда я использую click_no_wait
, кнопка на странице мигает (как будто нажата), но всплывающее окно не появляется, а затем мое приложение Watir зависает, ожидая всплывающее окно, которое не появляется , Если я переключусь на click
, всплывающее окно произойдет, но приложение 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>
(Страница может содержать несколько групп, поэтому в средней части могут быть кратны этому разделу, каждая с различным номером ID в имени dgPermission
)