我有一个通过Javascript的Oracle Apex 18.1 对话框。 在该模式对话框中,有一个经典报告区域,其中显示了一堆图像,这些图像都附加了超链接。我使用的模板如下:
<a href="f?p=&APP_ID.:40:&APP_SESSION.::NO:RP:P40_VIDEOID:#VIDEOID#">
<img src="https://img.youtube.com/vi/#VIDEOID#/mqdefault.jpg" width="210" height="118">
</a>
问题在于,Apex在打开“模态对话框”之前将链接转换为类似这样的内容:
<a href="javascript:apex.navigation.dialog.close(true,'f?p=100:40:4815510542999:::::');::NO:RP:P40_VIDEOID:vFZHArtFt8Y" class="WATCHED_VIDEO_0">
<img src="https://img.youtube.com/vi/vFZHArtFt8Y/mqdefault.jpg" width="210" height="118">
</a>
并且中断页面,因为其中的Javascript无效-未替换Item参数,因此链接不起作用。
要使顶点包含该项目值,我该怎么办?
答案 0 :(得分:4)
也许您可以在选择中创建url,然后在模板中使用。在您的SQL中,使用APEX_UTIL.PREPARE_URL创建URL,并将该列命名为url
SELECT
...,
APEX_UTIL.PREPARE_URL(
p_url => 'f?p=' || :APP_ALIAS || ':40:' || :APP_SESSION ||'::NO::P40_VIDEOID:' || mytable.video_id,
p_checksum_type => 'SESSION') as url
FROM
mytable
在模板中,您可以像使用#VIDEOID#一样使用url值
<a href="#URL#">
<img src="https://img.youtube.com/vi/#VIDEOID#/mqdefault.jpg" width="210" height="118">
</a>