0

我想获取渲染参数。

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

<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('weburl').value var testurl =Liferay.PortletURL.createRenderURL(); testurl.setParameter("name",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 文件中获取我的值?

4

2 回答 2

0

尝试使用renderRequest.getParameter("name"),它应该工作。

于 2014-10-10T13:33:17.387 回答
0

你厌倦了 ParamUtil 类吗?

ParamUtil.get(请求,参数,默认值)。

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

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

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

于 2014-10-13T08:27:33.220 回答