Ajax 缓存

今天遇到ajax缓存的问题,指定同样的url和参数值总是有缓存,跳不到后台程序里!
 
我先用了一种龌龊的方法,就是在url后又加了个由数据数产生的参数
var rand=Math.random();
var url="A.aspx?t="+escape(t)+"&r="+escape(rand);
不知道大家有没有什么好办法?

----分割线-----------

解决办法:

在Page_Load中加入:

Response.Buffer = true;
Response.ExpiresAbsolute = System.DateTime.Now.AddDays(-1);
Response.Expires = 0;
Response.CacheControl = "no-cache";
Response.AddHeader("Pragma", "No-Cache");

-------myAjax-------

//url:处理地址,data:参数,progressobj:等待提示,successfun:返回执行
function myAjax(url, data, progressobj, successfun) {
    $.ajax({
        type: "post",
        url: url,
        data: data,
        beforeSend: function(XMLHttpRequest) {
            //ShowLoading();
            $("#" + progressobj).show();

        },
        success: function(msg) {
            successfun(msg);
        },
        complete: function(XMLHttpRequest, textStatus) {
            //HideLoading();
            $("#" + progressobj).hide();
        },
        error: function() {
            //请求出错处理
        }
    });
    return false;

posted @ 2007-04-26 18:16  青羽  阅读(627)  评论(3编辑  收藏  举报