我有一个 Oracle APEX 经典报告,我想在弹出模式窗口中显示一个 Oracle APEX 页面(给定记录的详细信息)。
我想不惜一切代价避免使用插件。这可能吗?我正在使用 APEX 4.1。
塔马斯
我有一个 Oracle APEX 经典报告,我想在弹出模式窗口中显示一个 Oracle APEX 页面(给定记录的详细信息)。
我想不惜一切代价避免使用插件。这可能吗?我正在使用 APEX 4.1。
塔马斯
在您的报告上创建一个带有链接的列:
将以下 javascript 代码添加到您的 apex 页面(函数和全局变量声明),更改您要打开的弹出页面的正确 APP_ID、PAGE_ID 和 ITEM_NAME 的 URL:
function openModal(vId){
var url = 'f?p=<APP_ID>:<APP_PAGE>:&SESSION.::NO:RP,62:P<APP_PAGE>_ID:'+vID;
var $dialog = $('<div id="ModalFacPenDiv" style="overflow:auto;overflow-y: hidden;"> <iframe id="modalID" src="'+url+'" width="900px" height="260px" frameborder="no" style="overflow:auto;"></iframe></div>');
$($dialog).dialog({
open: function(event, ui){
$(".ui-dialog-titlebar-close").hide(); },
modal: true ,
dialogClass: 'noTitle',
title: 'YOUR TITLE' ,
width : 920 ,
height: 380,
buttons: {
"Close": function(){
window.parent.doSubmit('REFRESH');
$(this).dialog("close");} },
closeOnEscape: false });
}
您需要在Security Attributes > Browser Security上设置Embed in Frames以允许或允许来自同一来源(这个更好/更安全)。
我假设在弹出页面中,您有必要的过程来显示基于某个 ID 的信息。
希望能帮助到你。