我试图在用户尝试从页面导航时显示Primefaces确认对话框。当前页面可能有一些未保存的数据,因此会提示用户在离开页面之前是否要保存它们。如何在导航到其他页面时显示Primefaces确认对话框?
此刻,我可以只显示确认对话框,当用户从这样的页面点击了:
function onBeforeUnload_Handler(){
confirmation.show(); // confirmation is the "widgetVar" value of p:confirmDialog
}
window.onbeforeunload = onBeforeUnload_Handler;
然而问题是,在显示其导航到其他页面的对话框,而无需等待来自用户的响应。我希望当前页面等待用户响应并执行诸如“保存”或“不保存”之类的操作,然后离开。
我试着在“confirmation.show()”后添加“return false”,但这会导致浏览器警报框弹出。
(Primefaces 3.0.M1)
非常感谢
谢谢罗伯特!想象一下,我在一个页面中有30到40个链接。每个人都走向不同的方向。我正在寻找可用于任何这些链接的解决方案。就像当页面卸载时,我想触发对话框,并保持页面等待用户的响应。谢谢。 – ZakiMak