prototype与jquery下Ajax实现的差别


Posted in Javascript onSeptember 13, 2009

先列举一下Ajax在Jquery和prototype中的实现。
Jquery:

<script language="javascript"> 
$(function(){ 
var box = {}; 
var remoteUrl = 'index.php'; 
box.interval = 5*60*1000;//5分钟 
box.showBoxInfo = function() { 
jQuery.get(remoteUrl, function(data){ 
var msg_box = $('#msg_box'); 
msg_box.innerHTML = data; 
} 
}); 
} 
box.run = function(){ 
this.showBoxInfo(); 
setInterval(this.showBoxInfo,this.interval); 
}; 
box.run(); 
}) 
</script>

prototype:
<script language="javascript"> 
var box = {}; 
box.interval = 5*60*1000;//5分钟 
box.showBoxInfo = function(){ 
var pars = ""; 
var remoteUrl = 'index.php'; 
var myAjax = new Ajax.Request( 
remoteUrl, 
{ 
method: 'get', 
parameters: pars, 
onComplete: box.showResponse 
}); 
}; 
box.showResponse = function(data){ 
var msg_box = $("msg_box") ; 
msg_box.innerHTML = data.responseText; 
}; 
box.run = function(){ 
this.showBoxInfo(); 
setInterval(this.showBoxInfo,this.interval); 
}; 
box.run(); 
</script>

实际在引入setInterval函数后prototype却不能刷新,这是为什么呢?
原来是prototype对于相同的URL有缓存机制,应此不能刷新页面,特别是在用户使用F5或点击“刷新”后,会出现Ajax响应区空白的bug,这样就必须让prototype不刷新。
对于prototype中的URL添加随机数
原:var remoteUrl = 'index.php';
修改后:var remoteUrl = 'index.php?rand='+Math.random();
使用GET方式产生一个与页面显示无关的参数即可。
Javascript 相关文章推荐
在模板页面的js使用办法
Apr 01 Javascript
javascript 利用Image对象实现的埋点(某处的点击数)统计
Dec 28 Javascript
jquery css 设置table的奇偶行背景色示例
Jun 03 Javascript
编写简单的jQuery提示插件
Dec 21 Javascript
jquery中ajax处理跨域的三大方式
Jan 05 Javascript
即将发布的jQuery 3 有哪些新特性
Apr 14 Javascript
jquery使用Cookie和JSON记录用户最近浏览历史
Apr 19 Javascript
JavaScript常用判断写法大全(推荐)
May 30 Javascript
Highcharts入门之简介
Aug 02 Javascript
Angularjs在初始化未完毕时出现闪烁问题的解决方法分析
Aug 05 Javascript
利用Mongoose让JSON数据直接插入或更新到MongoDB
May 03 Javascript
vue 2.0 购物车小球抛物线的示例代码
Feb 01 Javascript
JS 参数传递的实际应用代码分析
Sep 13 #Javascript
javascript类继承机制的原理分析
Sep 12 #Javascript
javascript 类定义的4种方法
Sep 12 #Javascript
一个简单的javascript类定义例子
Sep 12 #Javascript
一个简单的JavaScript 日期计算算法
Sep 11 #Javascript
关于javascript 回调函数中变量作用域的讨论
Sep 11 #Javascript
javascript 一些用法小结
Sep 11 #Javascript
You might like
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
php验证码生成代码
2015/11/11 PHP
详解WordPress开发中wp_title()函数的用法
2016/01/07 PHP
php中引用&amp;的用法分析【变量引用,函数引用,对象引用】
2016/12/12 PHP
走出JavaScript初学困境—js初学
2008/12/29 Javascript
javascript prototype原型操作笔记
2009/12/07 Javascript
javascript 验证日期的函数
2010/03/18 Javascript
JavaScript插入动态样式实现代码
2012/02/22 Javascript
js取消单选按钮选中示例代码
2013/11/14 Javascript
解决自定义$(id)的方法与jquery选择器$冲突的问题
2014/06/14 Javascript
js返回前一页刷新本页重载页面
2014/07/29 Javascript
我用的一些Node.js开发工具、开发包、框架等总结
2014/09/25 Javascript
node.js中使用socket.io的方法
2014/12/15 Javascript
JS实现在页面随时自定义背景颜色的方法
2015/02/27 Javascript
JavaScript如何获取数组最大值和最小值
2015/11/18 Javascript
JavaScript中绑定事件的三种方式及去除绑定
2016/11/05 Javascript
angular.js指令中transclude选项及ng-transclude指令详解
2017/05/24 Javascript
vue2.0使用v-for循环制作多级嵌套菜单栏
2018/06/25 Javascript
jQuery实现菜单的显示和隐藏功能示例
2018/07/24 jQuery
详解jQuery中的easyui
2018/09/02 jQuery
Node.js模拟发起http请求从异步转同步的5种用法
2018/09/26 Javascript
微信小程序利用swiper+css实现购物车商品删除功能
2019/03/06 Javascript
五句话帮你轻松搞定js原型链
2020/12/09 Javascript
[04:32]DOTA2著名解说配音敌法师 现场专访海涛怒切假腿
2013/12/20 DOTA
关于python2 csv写入空白行的问题
2018/06/22 Python
对python的输出和输出格式详解
2018/12/08 Python
python 检查数据中是否有缺失值,删除缺失值的方式
2019/12/02 Python
TensorFlow:将ckpt文件固化成pb文件教程
2020/02/11 Python
Python函数生成器原理及使用详解
2020/03/12 Python
html5 canvas-2.用canvas制作一个猜字母的小游戏
2013/01/07 HTML / CSS
Regatta官网:英国最受欢迎的户外服装和鞋类品牌
2019/05/01 全球购物
个人简历自我评价范文
2014/02/04 职场文书
社区法制宣传月活动总结
2015/05/07 职场文书
经典爱情感言
2015/08/03 职场文书
看完这篇文章获得一些java if优化技巧
2021/07/15 Java/Android
使用 Apache 反向代理的设置技巧
2022/01/18 Servers