动态生成的内容重新加载不变

时间:2011-11-29 12:59:00

标签: jquery

我正在接触Jquery。

问题:我希望用户能够通过在fancybox中打开细节进行编辑来更新动态生成列表中的信息(因此我使用.live并单击)。所有工作除非用户打开一个fancybox然后更新信息(它发布正常并使用下面更新数据库)然后关闭并重新打开fancybox窗口,动态生成的内容重新加载不变。我猜测浏览器正在缓存页面。如何在重新打开facnybox窗口时强制加载更新的信息?

此外,如果您可以建议以下代码是否可以改进。

$(document).ready(function() {
$("#UpdateLink").live('click', function() { 
   $('#txtHint1').fadeIn('fast').html('<img src="ajax-loader.gif"  />');
    var formData = $('#UpdateLinkForm').serialize();
        $.ajax({
        type: "POST",
        url: "Link-Updater.asp",
        data: formData,
        success: function(d) {                  
        $('#txtHint1').empty().html(d).delay(800).fadeOut('slow');
        }
    });
});

});

谢谢。

2 个答案:

答案 0 :(得分:0)

您可以尝试为AJAX调用禁用缓存:

// Disable caching of AJAX responses
$.ajaxSetup ({
    cache: false
});

答案 1 :(得分:0)

如果上述缓存选项失败,则第二种方法是将随机字符串参数附加到URL。我建议使用当前的时间戳,因此它的内容如下:

Link-Updater.asp?rand=123456789

字符串本身在javascript中相对容易构建。