如何获取渲染参数

时间:2014-10-10 13:08:02

标签: dialog liferay liferay-6 liferay-aui

我想获得渲染参数。

我写了以下aui:用于打开新对话框的脚本。在那个脚本中我设置参数。

<input type="text" name="<portlet:namespace/>weburl" size="75: id="weburl" label="" inlineField="true"  />  
<aui:button name="btnPreview" id="btnPreview" value="Preview"/>

<aui:script>
    AUI().use('aui-base','aui-io-plugin-deprecated','liferay-util-window','liferay-portlet-url', 'aui-dialog-iframe-deprecated', function(A) {
        A.one('#<portlet:namespace />btnPreview').on('click', function(event){

            alert(document.getElementById('weburl').value)
            var strUrl=document.getElementById('weburl').value;
            var renderURL =Liferay.PortletURL.createRenderURL();
            renderURL.setParameter("nameUrl",strUrl);
            renderURL.setParameter("mvcPath",'/html/view2.jsp');
            renderURL.setPortletId("Portlets_WAR");
            renderURL .setWindowState("pop_up");

            alert(renderURL.toString());

            var popUpWindow=Liferay.Util.Window

                .getWindow({
                    dialog: {
                        centered: true,
                        constrain2view: true,

                        modal: true,
                        resizable: false,
                        width: 500
                    }
                })

                .plug(A.Plugin.DialogIframe, {
                    autoLoad: true,
                    iframeCssClass: 'dialog-iframe',
                    uri:'<%=portletSettingsURL.toString()%>'
                })

                .render();

            popUpWindow.show();
            popUpWindow.titleNode.html("Image Preview");
            popUpWindow.io.start();
        });
    });
</aui:script>

使用此脚本,我会重定向到我的view2.jsp,并在对话框中成功打开该页面。在这里,我还使用:

设置参数
  

var strUrl = document.getElementById(&#39; weburl&#39;)。value                     var testurl = Liferay.PortletURL.createRenderURL();                     testurl.setParameter(&#34;名称&#34;,strUrl);

我的门户网站:renderURL如下

 <portlet:renderURL var="portletSettingsURL"
 windowState="<%=LiferayWindowState.POP_UP.toString()%>">
       <portlet:param name="mvcPath" value="/html/view2.jsp"/>
         </portlet:renderURL>

我的view2.jsp文件如下

 <%

String str1=renderRequest.getParameter("nameUrl");

System.out.print("value " +str1);

%>

我想将我的weburl文本框值发送到view2.jsp文件

我只想在view2.jsp文件中使用name的值 如何在view2.jsp文件中获取我的值?

2 个答案:

答案 0 :(得分:0)

尝试renderRequest.getParameter("name"),它应该有效。

答案 1 :(得分:0)

你厌倦了ParamUtil课吗?

ParamUtil.get(request,param,defaultValue)。

要将params放入URL,您可以查看此内容。这适用于scriptlet,但您也可以在AUI脚本中使用它。

https://www.liferay.com/community/forums/-/message_boards/message/43775763

编辑: 您可以将参数添加到网址,如下所示:url = url + '&<portlet:namespace/>yourParamName=yourParamValue'