closethick按钮消失了liferay popup 6.2

时间:2014-06-24 13:47:39

标签: popup liferay alloy-ui liferay-aui

我正在将AUI弹出对话框窗口从liferay 6.1迁移到liferay 6.2。我看到有一些具体的变化要做。我在显示按钮方面遇到了一些问题,但现在已经解决了。但问题是关闭图标(x)应位于右上角。一添加保存按钮,它就会突然消失。

这是我的代码:

myPopup = AUI().use('aui-base','liferay-util-window','aui-io-deprecated', 'event', 'event-custom', function(A) {
    var buttons =[{
        cssClass: 'button_close',
        label: 'Save',
        render:true,
        id: 'myPopupButton',
        on: {
        click: function() {
            myPopupSubmit();
        }}
    }];

myPopup = Liferay.Util.Window.getWindow(
{
    dialog: {
        title : a + ' mytitle',
        centered : true,
        height : 600,
        width : 500,
        draggable : true,
        resizable : true,
        modal : true,
        toolbars: {
            footer:buttons
        },

    }}).plug(A.Plugin.IO, {
        uri : url
    }).render();
    myPopup.show(); 
});
}

如果您对此有任何想法,请告诉我。

on myPopupSubmit我还编写了关闭弹出窗口的代码:

top.document.getElementById('closethick').click();

由于没有closethick按钮,因此会返回null

1 个答案:

答案 0 :(得分:2)

使用modal dialog example作为比较,使用X属性时会移除toolbars关闭按钮。

查看toolbars属性的the source code(撰写本文时的第309行)表示如果您直接使用此属性,则需要添加自己的X在标题中关闭。

另一种方法是使用addToolbar函数(如示例所示)在保留默认工具栏的同时包含buttons

modal.addToolbar([{
 cssClass: 'button_close',
 label: 'Save',
 render:true,
 id: 'myPopupButton',
 on: {
       click: function() {
         myPopupSubmit();
       }
     }
}]);

我还会考虑让您的myPopupSubmit功能可以使用该对话框的实例,这样您就可以直接访问dialog.hide()dialog.hide()之后调用myPopupSubmit使用X近距离方法。

如果坚持使用当前的方法,正在使用的id将无效,您将需要使用CSS选择器,因为基于YUI的id将会改变。