javascript - 加载 ajax 内容之前的事件

标签 javascript jquery ajax cookies

我试图在 cookie 中维护一些对象以恢复一些设置。最初我尝试在 window.unload 中使用 cookie 保存和恢复设置。它在全页加载下工作。但它在我的情况下不起作用,因为整个页面没有加载,只是使用 ajax post(ajax 加载)替换特定内容。那么你能告诉我在什么情况下我可以将这些值保存在 cookie 中以在使用 ajax post 时恢复吗?

我在 window.unload 事件中尝试了下面的代码

window.onunload = function (e) {
    var gridObjModel = $("#Grid");
    var myCookie = escape(JSON.stringify({ 
        "CurrentPage": gridObjModel.pageSettings.currentPage, 
        "SortedColumns": gridObjModel.sortSettings.sortedColumns, 
        "GroupedColumns": gridObjModel.groupSettings.groupedColumns 
    }));
    document.cookie = myCookie;
}

最佳答案

您可以尝试以下方法:

$(window).on("unload", function (e) {
    var gridObjModel = $("#Grid");
    var myCookie = escape(JSON.stringify({ 
        "CurrentPage": gridObjModel.pageSettings.currentPage, 
        "SortedColumns": gridObjModel.sortSettings.sortedColumns, 
        "GroupedColumns": gridObjModel.groupSettings.groupedColumns 
    }));
    document.cookie = myCookie;
});

当您执行 ajax 加载时,只需在之前触发卸载:

$(window).trigger("unload");
$("#foo").load(someUrl);

关于javascript - 加载 ajax 内容之前的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17378536/

相关文章:

Jquery Ajax 调用错误

javascript - 如何删除焦点上的部分文字?

javascript - 仅当在同一表单的另一个字段中输入数据时才传递表单字段数据

javascript - 将焦点设置到创建的 div

javascript - 如何将元素从静态布局位置动画到绝对布局位置?

C# MVC 4 : Passing JavaScript array in View to Controller

javascript - RoR - 将提交表单转换为 AJAX

javascript - 如何截取youtube屏幕截图

Javascript递归在遍历整个树之前完成?

javascript - ajax成功函数的返回值