【问题标题】:How to force using new jsp session attributes after jQuery AJAX loading?jQuery AJAX 加载后如何强制使用新的 jsp 会话属性?
【发布时间】:2013-08-09 04:35:14
【问题描述】:

对于我试图仅显示相关代码的问题(请参见下文)。 作为在函数 loadUser 中调用 user.jsp 的结果,会话属性会发生变化。这些会话属性用于加载 actions.jsp

的 jQuery 函数 loadActions

但是,只有当 Internet Explorer 设置为每次访问网页时检查存储页面的较新版本,会话属性的更改才会在 actions.jsp 中可见.否则,在多次调用 loadUser 之后,这些会话属性根本不会改变。

Mozilla 似乎工作正常。

是否有可能在函数 loadActions 中强制使用新的会话属性?

$(document).ready(function () 
{
    loadUser();
});

var loadUser = function () {
$.ajax({
    url: 'user.jsp',
    data: {…},
    success: function (data) {…},
    error: function (data) {…},
    complete: function () {
        loadActions();
    }
});
}

var loadActions = function () {
     $('#actionsList').load('actions.jsp #print, #letters');
}

【问题讨论】:

    标签: jsp jquery session


    【解决方案1】:

    在调用中添加一个唯一的参数,这样 IE 就不会认为页面可以被缓存:

    $('#actionsList').load('actions.jsp?' + (new Date()).getTime() + ' #print, #letters');
    

    【讨论】:

    • 这有帮助!但只用了2-3次。进一步点击导致同样的问题。有什么想法吗?
    • 我需要在其他一些地方做一个类似的技巧来防止缓存
    猜你喜欢
    • 2010-10-22
    • 2017-09-14
    • 1970-01-01
    • 2022-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-12
    • 2013-10-10
    相关资源
    最近更新 更多