我正在尝试使用以下代码在弹出窗口中加载一个JSP页面。
Liferay.provide(
window,
'<portlet:namespace />showPopupWindow',
function() {
var data = {};
var value = document.getElementById('<portlet:namespace />environments').value;
var array = value.split();
data.<portlet:namespace />userName = "vaishali";
data.<portlet:namespace />array = array;
<liferay-portlet:renderURL var="addEntitiesUrl" windowState="<%= LiferayWindowState.POP_UP.toString() %>">
<liferay-portlet:param name="jspPage" value="/path/abc.jsp" />
</liferay-portlet:renderURL>
var url = '<%= addEntitiesUrl.toString() %>';
var dialog = Liferay.Util.Window.getWindow(
{
dialog: {
height: 1000,
cache: false,
centered: true,
destroyOnClose: true,
destroyOnHide: true,
width: 1600,
toolbars: {
footer: [
{
cssClass: 'btn-primary btn-lg',
id:'addEntityPopUp',
label: 'Save',
on: {
click: function(){
if(document.getElementById('selectedTableBody')){
//console.log('yesssss');
}
}
}
}
],
header: [
{
cssClass: 'close',
discardDefaultButtonCssClasses: true,
labelHTML: '<span> \u00D7 </span>',
on: {
click: function(event) {
dialog.hide();
}
}
}
]
}
},
id: '<portlet:namespace/>dialog',
title: 'Title'
}
);
dialog.plug(
A.Plugin.IO,
{
data: data,
uri: url
}
);
}, ['aui-io-plugin-deprecated', 'aui-io', 'liferay-util-window']
);
第一次打开弹出窗口时,将加载JSP页面,并且还将在JSP页面上获取数据。但是,当我再次打开弹出窗口时,窗口上没有任何内容。而且网络标签也没有。
我也尝试过使用由A.Plugin.IO插入的A.Plugin.DialogIframe模块,但是在这种情况下,数据不会传递到jsp页面。