Oracle Apex.Stop 如果有任何未保存的更改,则卸载页面(当单击可导航 link 时)
Oracle Apex.Stop a page unload(when clicked on a navigable link) if there are any unsaved changes
我目前正在使用 oracle apex。我为我的页面创建了一个向导进度列表,列表中的标签作为可导航的链接。但是当用户点击这些链接导航到另一个页面时,我需要询问用户是否确定有未保存的更改,可能使用 apex.message.confirm()
。
在共享组件中创建列表时,我通过在列表条目标签中使用 href="my_link"
使其可导航。我知道如果我添加 onClick="my_function();"
我可以直接向那个 link.But 添加功能 在应用程序级别在哪里添加这个 javascript 功能?
我怎么做?有什么想法吗?
注意:我不能在页面级别使用警告未保存的更改选项。因为我通过动态操作(pl/sql 代码)将我页面中的值提交给数据库。因此,即使在单击保存并将数据插入数据库后,当我尝试导航到其他页面时,它也会显示未保存更改的警告。我无法在单击保存按钮时使用提交页面,因为它刷新了整个页面,这是不需要的。
页面属性 -> Navigation
-> Warn on Unsaved Changes
设置为 Yes
。之后它将自动工作。适用于 APEX 5。
要取消未保存更改的检查,请使用 JavaScript 函数 apex.page.cancelWarnOnUnsavedChanges();
。例如,如果您使用 DynamicAction 保存数据,请添加类型为 Execute JavaScript Code
的其他 true 操作并在那里调用它。
通过在列表的共享组件中填写列表条目标签时在提供的名称中使用onClick ="my_function();"
,您可以定义单击link时需要执行的操作。"my_function"
然后可以在 function and global variable declaration
部分的页面级别声明。
例如:
<a href="#" onClick="my_function('28');">&F300_LABEL_TEXT.</a>
将作为共享组件的列表入口标签!
并在页面级别的 function and global variable declaration
部分中。
function my_function(page){
if (apex.page.isChanged() == true)
{apex.message.alert("there are unsaved changes");
else{apex.navigation.redirect("f?p="+$v('pFlowId')+":"+page+":"+$v("pInstance")+"::NO");}
}
我目前正在使用 oracle apex。我为我的页面创建了一个向导进度列表,列表中的标签作为可导航的链接。但是当用户点击这些链接导航到另一个页面时,我需要询问用户是否确定有未保存的更改,可能使用 apex.message.confirm()
。
在共享组件中创建列表时,我通过在列表条目标签中使用 href="my_link"
使其可导航。我知道如果我添加 onClick="my_function();"
我可以直接向那个 link.But 添加功能 在应用程序级别在哪里添加这个 javascript 功能?
我怎么做?有什么想法吗?
注意:我不能在页面级别使用警告未保存的更改选项。因为我通过动态操作(pl/sql 代码)将我页面中的值提交给数据库。因此,即使在单击保存并将数据插入数据库后,当我尝试导航到其他页面时,它也会显示未保存更改的警告。我无法在单击保存按钮时使用提交页面,因为它刷新了整个页面,这是不需要的。
页面属性 -> Navigation
-> Warn on Unsaved Changes
设置为 Yes
。之后它将自动工作。适用于 APEX 5。
要取消未保存更改的检查,请使用 JavaScript 函数 apex.page.cancelWarnOnUnsavedChanges();
。例如,如果您使用 DynamicAction 保存数据,请添加类型为 Execute JavaScript Code
的其他 true 操作并在那里调用它。
通过在列表的共享组件中填写列表条目标签时在提供的名称中使用onClick ="my_function();"
,您可以定义单击link时需要执行的操作。"my_function"
然后可以在 function and global variable declaration
部分的页面级别声明。
例如:
<a href="#" onClick="my_function('28');">&F300_LABEL_TEXT.</a>
将作为共享组件的列表入口标签!
并在页面级别的 function and global variable declaration
部分中。
function my_function(page){
if (apex.page.isChanged() == true)
{apex.message.alert("there are unsaved changes");
else{apex.navigation.redirect("f?p="+$v('pFlowId')+":"+page+":"+$v("pInstance")+"::NO");}
}