简体   繁体   中英

How to handle windows pop up in IE using Ruby

Please help me how to handle this pop ups. 在此处输入图片说明

Based on your last question, I assume you are using Watir-Classic (even though you have also listed Watir-Webdriver).

As @orde mentioned in the comments, Watir has an Alert class for handling these types of dialogs. Unfortunately, in terms of clicking buttons, Watir-Classic only has an #ok method defined :

# Press the "OK" button on the JavaScript dialog.
def ok
  dialog.button(:value => "OK").click
  wait_until_not_exists
end

This will not work for this dialog as there is a "Yes" and "No" button rather than an "OK" button. You will need to duplicate this functionality with the right value.

Note that the dialog is a RAutomation window and no longer Watir specific code. As a result, the button values are not always intuitive - it is not always just the text you see. To get the right values, you should ask the dialog what values it sees:

browser.alert.send(:dialog).buttons.map(&:value)
#=> ["&Yes", "&No"]

We can then make the same calls as the #ok method, but with the correct value:

alert = browser.alert
alert.send(:dialog).button(:value => '&Yes').click
alert.wait_while_present

这段代码可以很好地处理这种类型的弹出窗口:

save_dialog = WIN32OLE.new("AutoItX3.Control") save_dialog.ControlClick("Windows Internet Explorer", "Yes", "[CLASS:Button;INSTANCE:1]")

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM