Liferay ダイアログ ボックスがあります。このダイアログ ボックスを閉じて、URL をページにリダイレクトしたいと考えています。
私はこのようにしています。
<aui:column columnWidth="16" >
<%if(UserGroupRoleLocalServiceUtil.hasUserGroupRole(u.getUserId(), groupId, role.getRoleId())){ %>
<input value="delete" type="button" onclick="document.location.href='
<portlet:actionURL name="deleteUserRole"><portlet:param name="memberId" value="<%= memberIdStr %>"/>
<portlet:param name="organization" value="<%= Long.toString(organizationID) %>"/></portlet:actionURL>'" />
<%} %>
</aui:column>
public void deleteUserRole(ActionRequest actionRequest,ActionResponse actionResponse){
// process to delete user role
Role r = RoleLocalServiceUtil.getRole(org.getCompanyId(),
"Power User");
UserGroupRoleLocalServiceUtil.deleteUserGroupRoles(userID, groupId, new long[] { r.getRoleId() });
actionResponse.sendRedirect("/group/employee/empHome");
}
この方法を使用して削除ボタンをクリックすると、このメソッドが呼び出され、プロセスが実行され、この URL にリダイレクトされますが、ポップアップ ウィンドウが表示されます。
actionResponse.sendRedirect ページの特定のページにリダイレクトしたいのですが、ダイアログ ボックスではなく、ダイログ ボックスで開くべきではありません。
最初にこのダイアログ ボックスを閉じてから、ページを特定の URL にリダイレクトするにはどうすればよいですか?
リンクでこのクラスを呼び出してダイアログボックスを開いています以下は私のjsファイルです
/test.js/ _ _
var myPopup;
AUI().ready( function() {
if (AUI().one('#testing-menu')) {
AUI().one('.extendClick').on(
'mouseenter',
function(event){
AUI().one('.navi-type').setStyles({'display': 'none'});
AUI().one('.extendClick').setStyles({'display': 'none'});
AUI().one('.collapseArrow').setStyles({'display': 'block'});
}
);
AUI().all('.employee-dialog').on(
'click',
function(event){
var url = event.currentTarget.get('href');
event.preventDefault();
//console.info(url);
window.myPopup= Liferay.Util.openWindow(
{
dialog: {
align: { points: ['tc', 'tc'] },
width: 960
},
title: 'Settings',
uri: url
}
);
}
);
}
});