为什么不在第二次打开AlloyUI模态对话框?

时间:2016-08-11 08:45:11

标签: liferay yui liferay-aui alloy-ui

我正在尝试将外部URL加载到Liferay Portal中的模态AlloyUI对话框中。如果我在第一次打开对话框时显示内容,但第二次没有显示内容。如果刷新它显示的页面。

这是我的功能:

Liferay.provide(
    window,
    'openModal',
    function(title, url) {
        var A = AUI();
        var width = 800;

        var modal = Liferay.Util.Window.getWindow({
            dialog: {
                centered: true,
                constrain2view: true,
                modal: true,
                resizable: false,
                height: 650,
                width: width,
                //destroyOnClose: true,
                destroyOnHide: true,
                toolbars: {
                    footer: [
                        {
                            label: 'Close',
                            cssClass: 'btn-link pull-right',
                            on: {
                                click: function() {
                                    modal.hide();
                                }
                            }
                        }
                    ]
                }
            },
            closeOnOutsideClick: true,
            id:'test-dialog',
            title: title
        }).plug(A.Plugin.IO, {
            uri: url,
            on: {
                success: function(event) {
                    console.log("success");
                },
                complete: function(event) {
                    console.log("complete");
                },
                start: function(event) {
                    console.log("start");
                },
                failure: function(event) {
                    console.log("failure");
                }
            }
        }).render();
    }
);

该功能用于此链接:

<a href="javascript:openModal('${title}','${url}');">Open dialog</a>

第二次打开对话框时出现此错误:

  

无法读取未定义的属性“Window”

1 个答案:

答案 0 :(得分:0)

使用A.Plugin.DialogIframe

A.Plugin.IO模块解决