使用Oracle APEX 4.2.x.我创建了一个弹出窗口,可以搜索银行账户(用我的语言重新记录) . 它将返回一个ID,我们将在动态操作中使用该ID来获取有关该银行帐户的所有信息 .
我们必须在同一页面上,在多个页面上使用它两次,因此我们的解决方案是创建一个隐藏字段,其中包含(待填充)Rekening_ID的输入字段的名称 . 这将传递给我们的PopUp函数,该函数将此转发给回传函数 . 这样我们就可以将这个弹出窗口用于多个文本字段 .
这是待填充页面的HTML Headers 中的功能 .
NOTE: the paramItem is something like: P2_BANK_ACCOUNT_ID
<script language="JavaScript" type="text/javascript">
function callMyPopup (paramItem) {
var hiddenField = document.getElementById(paramItem).value;
var url;
url = 'f?p=&APP_ID.:3:&APP_SESSION.::::P3_HIDDEN:' + hiddenField;
w = open(url,"winLov","Scrollbars=1,resizable=1,width=800,height=600");
if (w.opener == null)
w.opener = self;
w.focus();
}
</script>
这是passBack函数(在银行帐户报告的“链接”列中调用) .
<script language="JavaScript">
function passBack(hidden_field, rekening_id)
{
opener.document.getElementById(hidden_field).value = rekening_id;
close();
}
</script>
因此,在弹出页面上,P3_HIDDEN的值设置为paramItem的值,其中包含我们将用于传递返回的文本字段 .
需要将此hidden_field传递给回传函数 . 现在我将值存储在P3_HIDDEN中,但它是's in a different region as the Report with the ' link'列 . 这样,当我使用#HIDDEN#时,它会以字面方式传递 passBack('#HIDDEN#',1)
. 但我需要这个值或P3_HIDDEN . 现在我认为通过使它成为Bind变量可以实现这一点 .
Question: How can I get my P3_HIDDEN field content into a bind variable, or into the passBack function while the select link is in another region?
1 回答
答案是:在passBack中代替
#P3_HIDDEN#
,调用$v('P3_HIDDEN')