我试图在 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/