Javascript 事件,然后再加载ajax内容

Javascript 事件,然后再加载ajax内容,javascript,jquery,ajax,cookies,Javascript,Jquery,Ajax,Cookies,我试图在cookie中维护一些对象来恢复一些设置。最初,我尝试在window.unload中使用cookie保存和恢复设置。它可以在整个页面加载中工作。但在我的情况下,它不起作用,因为整个页面并没有加载,只是使用ajax post(ajax加载)替换了特定的内容。那么,您能告诉我在使用ajax post时,在哪种情况下可以将这些值保存在cookie中以还原回来吗 我在window.unload事件中尝试了以下代码 window.onunload = function (e) { var

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

我在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);

酷。这种解决方案效果良好。多谢。除了触发“卸载”事件,没有其他方法吗?@RanjithKumarGovarthanan您可以有一个自定义事件,但这只意味着您必须在
unload
上触发该事件,但这可能是更好的实现方法。或者您是否希望在调用
.load
时自动执行此操作?