Oracle ApeX(PL / SQL) - 用JavaScript变量创建Bind变量

时间:2015-10-29 12:01:46

标签: javascript oracle plsql oracle-apex

使用Oracle APEX 4.2.x.我创建了一个弹出窗口,可以搜索银行账户(用我的语言重新记录)。它将返回一个ID,我们将在动态操作中使用该ID来获取有关该银行帐户的所有信息。

我们必须在同一页面上,在多个页面上使用它两次,因此我们的解决方案是创建一个隐藏字段,其中包含(待填充)Rekening_ID的输入字段的名称。这将传递给我们的PopUp函数,该函数将此转发给回传函数。这样我们就可以将这个弹出窗口用于多个文本字段。

这是待填充页面的HTML标题中的功能。

注意:paramItem类似于: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功能(在银行账户报告的&#39;链接&#39;列中调用)。

 <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中,但它位于不同的区域,因为报告带有&#39;链接&#39;柱。这样,当我使用#HIDDEN#时,它会以字面passBack('#HIDDEN#',1)为例传递。但我需要这个值或P3_HIDDEN。现在我认为通过使它成为Bind变量可以实现这一点。

问题:当选择链接位于另一个区域时,如何将我的P3_HIDDEN字段内容放入绑定变量或passBack函数中?

1 个答案:

答案 0 :(得分:0)

答案是:在passBack中代替#P3_HIDDEN#,请致电$v('P3_HIDDEN')