代码之家  ›  专栏  ›  技术社区  ›  griegs

卸载前的窗口显示两个对话框

  •  4
  • griegs  · 技术社区  · 14 年前

    我有这个jquery代码;

    $(function () {
        $(window).unbind("beforeunload");
        $(window).bind("beforeunload", function () {
            return confirm("Really?");
        });
    });
    

    当我关闭窗口时,我会收到确认请求,如果我点击“取消”,我会收到第二个确认,上面写着:

    “是否确实要离开此页?”

    “假”

    按“确定”继续,或按“取消”停留在当前页。

    为什么我会得到第二个对话框,有没有删除它的方法?

    编辑

    已将代码更改为;

    $(function () {
        $(window).bind("beforeunload", function () {
            return "slappy?";
        });
    });
    

    但是确认信息没有出现。事件正在触发,因为我可以在那里放置警报并看到警报。

    编辑2

    已将代码更改为此代码;

    window.onbeforeunload = function () {
        var txtBlog = $('#tbxNote').val();
        if (txtBlog != "")
            return "You have not saved your blog entry.";
    }
    

    它有效,但在我的信息上面和下面还有其他文本;

    “是否确实要离开此页?”

    “您尚未保存日志。”

    按“确定”继续,或按“取消”停留在当前页。

    1 回复  |  直到 13 年前
        1
  •  5
  •   Saxon Druce    14 年前

    只需使用:

    return "Really?"; 
    

    BeforeUnload事件要求您返回一个字符串,其中包含要在标准“确定”对话框中显示的消息。