Ajax应用-定义一套自己的Ajax框架
——————————————————————————
<script type="text/javascript">
//定义个一个function,作为一个Ajax类
//它的构造函数需要提供以下参数列表
function Ajax(url,callback,params,method){
this.method = method; //对象的ajax请求方法
this.url = url; //对象的ajax请求url
this.params = params; //对象的ajax请求参数
this.callback = callback;//对象的ajax请求回调
this.send = function(){ //请求发送函数
if(!this.method) //当没有提供请求方法的时候,默认为GET
this.method = 'GET';
if(method == 'POST'){//如果是POST方法
//用POST方法,参数可以通过send方法的参数写到请求的内容流中去
window.Ajax.client.open(this.method,this.url,true);
window.Ajax.client.send(params);//调用send函数,把参数写的请求内容中
}else if(method == 'GET'){//如果是GET方法
//用GET请求方法,参数就只能放在URL的后边,这种方式受到URL长度限制
window.Ajax.client.open(this.method, this.url + "?" + params,true);
window.Ajax.client.send();
}
//请求发出以后,就开始监听client的状态变化
window.Ajax.client.onreadystatechange = function(){
//如果成功返回,则调用预定义的回调函数
if (window.Ajax.client.readyState==4 && window.Ajax.client.status==200){
callback();//调用回调函数
}
};
};
//这里,把Ajax的client属性作为一种静态变量,类似于单例模式
if(!window.Ajax.client){
// 判断是否支持ActiveX控件,老版本的IE浏览器就需要使用ActiveXObject来创建
if(window.ActiveXObject){
// 通过实例化ActiveXObject的一个新实例来创建XMLHTTPRequest对象
window.Ajax.client = new ActiveXObject("Microsoft.XMLHTTP");
}
// 其他的大多数浏览器都支持本地javascript对象
else if(window.XMLHttpRequest){
// 创建XMLHTTPRequest的一个实例(本地javascript对象)
window.Ajax.client = new XMLHttpRequest();
}
}
}
//button的click事件函数
function sendAjax(){
//创建一个Ajax对象,然后提供必要的参数
var ajax = new Ajax('test001.txt',function(){
alert(window.Ajax.client.responseText);
},'','GET');
//发送请求
ajax.send();
}
</script>——————————————————————————————
<body style="text-align:center">
<input type="button" value="Send" onclick="sendAjax();"/>
</body>
——————————————————————————————
Ajax应用-定义一套自己的Ajax框架的更多相关文章
- Ajax请求(二)--JQuery的Ajax请求方法
JQuery库的Ajax请求的几种方法: 1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. 参数含义: url (String ...
- ajax 中操作this,需要先在ajax的外面给this重新定义为_this!!
//设置为默认收货地址 $(document).on('tap','.right_none',function(){ var _this = $(this); //只有这样定义,在ajax的内部才可以 ...
- JavaScript封装Ajax工具函数及jQuery中的ajax,xhr在IE的兼容
封装ajax工具函数 首先要思考:1.为什么要封装它?提高开发效率2.把一些不确定的情况考虑在其中 a. 请求方式 b. 请求地址 c. 是否异步 d. 发送参数 e. 成功处理 f. 失败处理3.确 ...
- Web的Ajax应用开发模式(二)——Ajax开发模式分析
寄语: 前天在查看一些公司的招聘要求时,看到有公司要求测试人员了解Ajax,故写此博文旨在帮助测试人员提高自身技术知识水平,愿与广大测试同胞共同进步.(欢迎纠错!!!) Web应用的传统开发模式总结: ...
- 深入理解ajax系列第九篇——jQuery中的ajax
前面的话 jQuery提供了一些日常开发中需要的快捷操作,例如load.ajax.get和post等,使用jQuery开发ajax将变得极其简单.这样开发人员就可以将程序开发集中在业务和用户体验上,而 ...
- Java过滤器处理Ajax请求,Java拦截器处理Ajax请求,拦截器Ajax请求
Java过滤器处理Ajax请求,Java拦截器处理Ajax请求,拦截器Ajax请求 >>>>>>>>>>>>>>&g ...
- 详解Ajax请求(三)——jQuery对Ajax的实现及serialize()函数对于表单域控件参数提交的使用技巧
原生的Ajax对于异步请求的实现并不好用,特别是不同的浏览器对于Ajax的实现并不完全相同,这就意味着你使用原生的Ajax做异步请求要兼顾浏览器的兼容性问题,对于java程序员来讲这是比较头疼的事情, ...
- Java过滤器处理Ajax请求,Java拦截器处理Ajax请求,java 判断请求是不是ajax请求
Java过滤器处理Ajax请求,Java拦截器处理Ajax请求,java 判断请求是不是ajax请求 Java过滤器处理Ajax请求,Java拦截器处理Ajax请求,拦截器Ajax请求 java ...
- 从零开始学 Web 之 Ajax(六)jQuery中的Ajax
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
随机推荐
- 安卓Activity、service是否处于同一进程
Activity与Service是否处于同一进程? 1)默认情况下(不写android:process的时候),此时同一个应用程序的所有组建位于同一进程里,Activity与service也处于同 ...
- Oracle第一天
Oracle第一天 v3.1 整体安排(3天) 第一天:Oracle的安装配置(服务端和客户端),SQL增强(单表查询). 第二天:SQL增强(多表查询.子查询.伪列-分页),数据库对象(表.约束.序 ...
- Eight
Eight 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1043/http://acm.split.hdu.edu.cn/showproblem.ph ...
- 重载 vs 重写
http://www.cnblogs.com/lonelyDog/archive/2011/11/16/2251011.html
- SublimeLinter 3中使用jshint
这货得知已久,在sublime2时期对着教程按部就班的凑合用着...不明所以. 今天无意发现SublimeLinter终于出3了,果断装之,鼓捣1个多小时,磕磕绊绊终于成功工作了.期间看了无数英文文档 ...
- linux centOS 安装oracle
安装环境 Linux服务器:CentOS6.4-64位 oracle服务器:oracle11g-64位 基本要求 内存大小:至少2G 硬盘大小:至少6G 交换空间:一般为内存的2倍,例如:2G的内存可 ...
- Qt5 OpenGL框架
#ifndef MYRENDERER_H #define MYRENDERER_H #include <QOpenGLContext> #include <QOpenGLFuncti ...
- Arch安装fcitx输入法
安装fcitx,安装gtk.qt模块. [root@ARCH ~]# pacman -S fcitx-im :: There are 4 members in group fcitx-im: :: R ...
- javamail邮件发送
// 发送邮件 public static void send(String toEmail, String content) { Session session = getSession(); tr ...
- ios中获取当前屏幕尺寸的方法
//获取当前屏幕尺寸 CGRect screenFrame = [UIScreen mainScreen].bounds; int screenWidth = screenFrame.size.wid ...