【www.gdgbn.com--js教程】

ajax自动清除缓存或不缓存做法

前台html提交的js脚本下操作

方法一:

在提交时加上时间戮

即在posturl处修改为:

var posturl="/ashx/vote.ashx?id="+obj+"&optionid="+sellist+"&guid="+new date().gettime();

//+"&guid="+new date().gettime();

加上这时间之后,问题解决。显然ajax实时的返回后台处理结果,我们目的达到。ok
方法二:

利用get url带一个随机参数就可以实现ajax自动实现缓存刷新了。


简单实现代码

function verify() {
      //通过jquery方式获取页面文本框中的数值
        var url = "ajaxserver?name=" + encodeuri(encodeuri($("#username").val()));
        //通过converturl对传入的数值做特殊处理,使每个数据都带有一个时间戳,从而产生不同的xhttprequest请求
        url = converturl(url);
        //调用jquery中的get请求方法向服务器端传值,定义一个回调函数在页面显示服务器端返回的数据
        $.get(url,null,function(data){
                $("#result").html(data);
});
}
//给url地址增加时间戳,骗过浏览器,不读取缓存
function converturl(url) {
        //获取时间戳
        var timstamp = (new date()).valueof();
        //将时间戳信息拼接到url上
        //url = "ajaxserver"
        if (url.indexof("?") >= 0) {
                url = url + "&t=" + timstamp;
        } else {
                url = url + "?t=" + timstamp;
        }
        return url;
}

本文来源:http://www.gdgbn.com/wangyezhizuo/28881/