Jquery拦截锚单击页面的更改

时间:2014-01-14 02:32:33

标签: javascript jquery

我想拦截锚点击并显示文本已更改但未使用zebra-dialog在表单中提交的提示。对于任何其他形式的页面离开,我使用内置的浏览器卸载对话框。

以下是我到目前为止的代码,对话框显示,但无论您点击哪个选项,最终都会停留在页面上。

$("body").on("mousedown",'a', function(e) {

    if(inputhaschanged) {
        return $.Zebra_Dialog("You haven't submitted your comment. Do you wish to leave?", {'type':'question','title':'','buttons':  [
                {caption: 'No', callback: function() {  }},
                {caption: 'Yes', callback: function() { return true; }}]
        });
    }

});          

1 个答案:

答案 0 :(得分:0)

一种解决方案是禁用页面上所有链接的默认行为,然后检查是否有修改。您还需要调用事件window.onbeforeunload以防止其他导航方法。 参考:how to stop page redirect How do you prevent a webpage from navigating away in JavaScript?