dojo 使用Watir关闭dijit对话框

ha5z0ras  于 2022-12-16  发布在  Dojo
关注(0)|答案(1)|浏览(174)

使用Watir/Selenium,我希望点击对话框右上角的“取消”按钮,如下所示:dijitDialog 'Cancel'
以下是DOM:

<div class="dijitDialog" role="dialog" aria-labelledby="dijit_Dialog_4_title" id="dijit_Dialog_4" widgetid="dijit_Dialog_4" style="width: 300px; position: absolute; opacity: 1; left: 533px; top: 297px; z-index: 100000;">
    <div data-dojo-attach-point="titleBar" class="dijitDialogTitleBar">
        <span data-dojo-attach-point="titleNode" class="dijitDialogTitle" id="dijit_Dialog_4_title" role="heading" level="1">Info</span>
        

 - <span data-dojo-attach-point="closeButtonNode"
   class="dijitDialogCloseIcon" data-dojo-attach-event="ondijitclick:
   onCancel" title="Cancel" role="button" tabindex="-1">

            <span data-dojo-attach-point="closeText" class="closeText" title="Cancel">x</span>
        </span>
    </div>
    <div data-dojo-attach-point="containerNode" class="dijitDialogPaneContent"><img src="information.gif" style="vertical-align:bottom">  Approved 1 record(s)</div>
    
</div>

我在想,大概是这样的:需要使用browser.element(name: "nameOfButton").click,但我不确定。
有什么建议吗?

bkhjykvo

bkhjykvo1#

我会尝试以下两种方法之一:

browser.span(class: 'dijitDialogCloseIcon').click

browser.span(data_dojo_attach_point: 'closeButtonNode').click

请注意,根据页面上存在的这些关闭/取消链接的数量,您可能需要将定位器的范围限定为对话框(而不是整个浏览器)和/或包括:visible定位器。

相关问题