在liferay

时间:2015-07-11 05:31:18

标签: liferay liferay-6 yui liferay-theme liferay-aui

我要求我需要在docbar中添加一个链接或按钮。当我单击链接或按钮时,从我自定义的portlet jsp它应该打开docbar左侧菜单。例如在docbar中,如果我点击编辑页面,它将打开左侧菜单,如下所示。如何实现这一目标?

enter image description here

我试过打开我的自定义jsp页面的左侧菜单链接,即使我在自定义jsp页面中包含docabr.js也没有打开。任何人都可以指导我如何实现这一目标吗? 以下是我试过的代码:

<script type="text/javascript" src="/html/js/liferay/dockbar.js"></script>

<portlet:renderURL var="editLayoutURL" windowState="<%= LiferayWindowState.EXCLUSIVE.toString() %>">
                <portlet:param name="struts_action" value="/dockbar/edit_layout_panel" />
                <portlet:param name="closeRedirect" value="<%= PortalUtil.getLayoutURL(layout, themeDisplay) %>" />
                <portlet:param name="groupId" value="<%= String.valueOf(scopeGroupId) %>" />
                <portlet:param name="selPlid" value="<%= String.valueOf(plid) %>" />
            </portlet:renderURL>

<aui:nav-item anchorId="editLayoutPanel" cssClass="page-edit-controls" data-panelURL="<%= editLayoutURL %>" href="javascript:;" iconCssClass="icon-edit" label="edit" />
<aui:script position="inline" use="liferay-dockbar">
    Liferay.Dockbar.init('#<portlet:namespace />dockbar');

    var customizableColumns = A.all('.portlet-column-content.customizable');

    if (customizableColumns.size() > 0) {
        customizableColumns.get('parentNode').addClass('customizable');
    }
</aui:script>

1 个答案:

答案 0 :(得分:2)

您可能需要在Dockbar中注册面板,如下所示:

<aui:script use="liferay-dockbar">
    Liferay.Dockbar.DOCKBAR_PANELS.myPanel = {
        css: 'lfr-has-mypanel',
        id: 'myPanel',
        node: null,
        showFn: A.bind(Liferay.Dockbar._showPanel, Liferay.Dockbar),
        tpl: '<div class="lfr-add-panel lfr-admin-panel" id="{0}" />'
    };
</aui:script>

您可以在Audience Targetting Simulator Hook

中查看有效的实施方案