我有一個Oracle APEX經典報告,我想在彈出的模式窗口(給定記錄的詳細信息)中顯示Oracle APEX頁面。在jQuery模態窗口中顯示html頁面(URL)的內容?
我想不惜一切代價避免插件。這可能嗎?我正在使用APEX 4.1。
塔馬斯
我有一個Oracle APEX經典報告,我想在彈出的模式窗口(給定記錄的詳細信息)中顯示Oracle APEX頁面。在jQuery模態窗口中顯示html頁面(URL)的內容?
我想不惜一切代價避免插件。這可能嗎?我正在使用APEX 4.1。
塔馬斯
創建在報表上的鏈接一欄:
以下JavaScript代碼添加到您的頂點頁(函數和全局變量聲明)改變爲右APP_ID的URL,在彈出的頁面中PAGE_ID和ITEM_NAME要打開:
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 });
}
你」會需要設置嵌入在框架到允許或來自同一產地允許(這是一個更好/更安全)上安全屬性>瀏覽器安全。
我假設在彈出頁面中您有必要的過程來顯示基於某個ID的信息。
希望它有幫助。
我開始使用上面的腳本。對話顯示完好,但它是空的。我的意思是它有一個正確的標題和一個關閉按鈕,但中間是empti。我已經嘗試傳遞一個固定的APEX頁面URL作爲要顯示的URL,但仍然是空的。 任何提示? – user1054310
彈出窗口將顯示您在鏈接中指定的頂點頁面: var url ='f?p =
嗯,是的。實際上該頁面是會話狀態保護的。問題是,我不知道如何在地球上生成URL的crc檢查代碼,而不使用應用程序進程。 – user1054310
任何你不想插件的原因?在我看來,最好的解決方案是Skillbuilders模態頁面插件,我認爲你已經看到了這一點? – Tom
是的。原因是我不能使用它們的任何類型,只有插件提供的五個類型。 – user1054310
是的,它具有預定義的主題,但您也可以使用自定義主題。該插件只是使用Colorbox爲模態區域提供樣式。如果這五個都不符合你的口味,那麼沒有什麼能阻止你自己造型呢?只是說,如果風格是阻止你使用它,它不應該。 – Tom