如何关闭Liferay 6.2中的PopUp窗口?

时间:2013-12-02 11:49:38

标签: popup liferay liferay-6 alloy-ui

我在 Liferay 6.2中使用Liferay UI进行弹出窗口。我正在弹出,但我无法关闭它。为什么它不起作用 Liferay 6.2。

下面是我的代码,它写在父页面上:

AUI().ready(function(A) {
    AUI().use('aui-dialog', 'aui-io', function(A) {
        var url = '<%=testPopupURL.toString()%>';
        Liferay.Util.openWindow(
                {
                    dialog: {
                        cache: false,
                        width:800,
                        modal: true
                    },
                    id:'<portlet:namespace/>shahbaj',              
                    uri: url
                }
            );

    Liferay.provide(
        window,
        '<portlet:namespace />closePopup',
        function(popupIdToClose) {
            var A = AUI();
            alert(popupIdToClose);
            A.DialogManager.closeByChild('#' + popupIdToClose);
        },
        ['aui-base','aui-dialog','aui-dialog-iframe']
        );
    });
});

下面的代码是弹出页面内容:

<aui:button name="YES" value="YES" onClick="javascript:yes();"/>
<aui:script>
    function yes(){
        alert('pop');
        Liferay.Util.getOpener().<portlet:namespace />closePopup('<portlet:namespace />shahbaj');
    }
</aui:script>

请帮帮我!!

2 个答案:

答案 0 :(得分:0)

在jsp中添加带有以下脚本的取消/关闭按钮。

<input type="button" onclick="hidePopup();" value="Cancel" />

function hidePopup(){
    AUI().ready('aui-dialog', function(A){
        A.DialogManager.hideAll();
    });
}

答案 1 :(得分:0)

更简单的解决方案

更简单的解决方案是使用close-panel类名。

<aui:button cssClass="close-panel" type="cancel" value="close" />

无需其他JavaScript。