zoukankan      html  css  js  c++  java
  • Ajax中的时间戳应用<转>

    ajax的时间戳
    当你的ajax需要的数据是及时更新的,也就是说在没有刷新页面的情况下,得到其他操作的新数据,你的ajax提交url中加入一个时间戳,这样,就可以避免页面使用缓存了,原理是:时间戳本事就是一个随时更新的变量,时间戳只是一个叫法,你可以这么理解:你的url中加了一个随时更新的变量,,那么,提交时是不会使用缓存的。
    var url = "insertData.jsp?textName="+nameAdd+"&date="+new Date().getTime();
    也可以用时间的数值形式:
    var url = "insertData.jsp?textName="+nameAdd+"&date="+(new Date()).valueOf();

    var url = "insertData.jsp?textName="+nameAdd+"&date="+Math.random();

    利用这个方法,可以实际项目开发中解决像更换验证码图片的及相类似的问题。
    如:
    <body>
           <img src="ImgeServer"/>
           <a onclick="changImg()" href="#">换一张</a>
    </body>
    当每次点击一下"换一张"这个链接时,就会触发onclick对应的changImg() 这个事件,在changImg()这个事件中就每次都改变ImgeServer这个servlet(利用在url后加上时间戳)。

    以下是校验用户名的一个的.js文件例子:
    // 定义用户校验的方法
    function verify(){
        //测试verify()这个方法
        alert("调用到了verify1.js中的verify()方法!");
         //下面是连写的方式

        //在jquery中,可以像StringBuffer.append()方法来拼接字符串一样,
        //将语句写成一个语句链
        //如: StringBuffer buffer=new StringBuffer();
        //     buffer.append("abc").append("def").append("ghi");

        //每次点击校验按钮: 在FireFox下,页面总会重新请求,次数累加;
        //                   而在IE下,页面不会重新请求,次数不累加,原因是IE下,每次读取的都是缓存(Cache)中的数据
         // var userName=$("#name").val();
           var url="AjaxServer?name="+$("#name").val();
          //调用在url中增加时间戳的方法
           url=addUrl(url);
           $.get(url,null,function(data){
               $("#result").html(data);
           });
    }

    //给url增加时间戳,利用时间戳来使页面提交的时候,每次的url都不一样,这样就骗过IE浏览器,不会去读取缓存中的数据了
    function addUrl(url)
    {
        //var timetemp = (new Date()).getTime();
        var timetemp = (new Date()).valueOf();
        //alert(timetemp); //时间戳
        if(url.indexOf("?")>-1)
        {
           url +=   "&t=" + Math.random();
           alert(url);
        }
        else

         {
           url = url + "&?t=" + timetemp;
           alert(url);
         }
        return url;
    }

  • 相关阅读:
    visual studio 注释
    EF Core导航属性
    【转】前端UI框架小汇总
    C#三种定时器的实现
    【转】自学MVC看这里——全网最全ASP.NET MVC 教程汇总
    【转】C#进阶系列——WebApi 接口参数不再困惑:传参详解
    【转】c# WebApi之解决跨域问题:Cors
    优秀.NET开源项目
    Linux简介及最常用命令
    C#中使用Socket实现简单Web服务器
  • 原文地址:https://www.cnblogs.com/winkey4986/p/2722333.html
Copyright © 2011-2022 走看看