如何通过执行JavaScript代码添加将重定向到另一个页面的动态操作?

时间:2015-01-21 18:11:42

标签: javascript oracle oracle-apex

我的apex应用程序上有按钮,点击后执行自定义PL / SQL代码。它们的名称为APPLY(Acknowledge)和CHANGE(Count Correct)。我需要它,以便在单击APPLY时,它会重定向到同一页面(实现PL / SQL代码),当单击CHANGE时,它会重定向到另一个页面(实现PL / SQL代码)。

我尝试通过"当按下按钮时设置后处理的条件分支"和/或"条件类型:请求=表达式1"表达式1的值等于" APPLY"或者"改变"。我无法通过这种方式产生我正在寻找的结果(令人沮丧)。 APEX表示提交的页面请求采用了单击的名称按钮(即单击APPLY时应用),但我无法实现。

我现在正在寻求为我的动态操作添加一个True Action for APPLY和CHANGE(目前是#34;执行PL / SQL代码"以及"提交页面"每个)执行重定向到应用程序中所需页面的Javascript代码。

我认为代码会使用类似的东西

"apex.navigation.redirect('f?p=928:35:4081364075246::NO:::');"
在这种情况下,第35页是我想要改变按钮的页面。

我不像我想的那样精通JavaScript,所以对我的任何方法的任何帮助都会受到赞赏。

3 个答案:

答案 0 :(得分:4)

我终于找到了如何做到这一点。按钮的请求(特别是按钮的动态操作)未设置为按钮名称,因为“请求/按钮名称”按钮名称为'提交页面' true操作未设置为按钮的名称。

请确保在动态操作中在'设置'下添加此信息。分支应该放在'提交:处理前'条件'请求=表达式1'表达式1等于按钮名称!

答案 1 :(得分:1)

在最近的一个项目中,一旦用户点击了模型页面上的“保存”按钮,我就需要进行页面重定向。该按钮具有动态操作,其中包括3个单独的操作:

执行PL / SQL 提交页面 关闭对话框

在提交页面之间,我添加了一个执行Javascript操作,单击我添加到页面的隐藏按钮。

 document.getElementById("BTN_ID").click();

隐藏按钮设置为在行为 - >中重定向用户行动 - > 重定向到应用程序中的页面和页面#

我隐藏了#BTN_ID{visibility:hidden;}放置在页面的CSS内联部分的按钮。

这很有用。

答案 2 :(得分:0)

这是我解决类似情况的方法: 我希望第2页上的DELETE按钮除了删除显示的行之外,还可以对其他表执行删除操作,然后返回到第1页:

  • 删除了现有的DELETE按钮。
  • 使用以下按钮创建新按钮:按钮名称= 删除,标签= 删除,操作= 提交页面
  • 使用 Delete and Return to Page 1 (删除并返回第1页),执行Point = Submit(提交)后,行为类型= 页面或URL ,目标= 页面1 ,高级请求= 删除,服务器端条件= 按下按钮时=删除,输入Type = PL / SQL函数体,然后输入PL / SQL FUNCTION BODY:

    声明

    lv_msg varchar2(2000):= null;

    开始    pz_delete_related_records(:P2_KEY1,:P2_KEY2,lv_msg);

    从BASE_TABLE删除    WHERE KEY1 =:P2_KEY1    AND KEY2 =:P2_KEY2;

    返回TRUE;

    end;