用javascript简单封装AJAX
1.创建一个AJAX引擎对象
var CreateAjax = function () {
var xhr = null;
if (window.XMLHttpRequest)
{
//非IE游览器
xhr=new XMLHttpRequest();
}else
{
//IE游览器
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
return xhr;
};
2.创建一个全局对象
var Ajax = function (option) {
//初始化数据
//可选GET,POST
var type = option.type;
//请求地址
var url = option.url;
var data = option.data;
//返回数据类型
var dataType = option.dataType;
//是否异步
var async = option.async;
var success = option.success;
//默认为GET方式
if(type==null){
type = "GET";
}
//默认返回文本类型
if (dataType == null) {
dataType = "text";
}
if (async == null) {
async = true;
}
//创建XMLHttpRequest对象
var xhr = CreateAjax();
//打开
xhr.open(type, url, async);
//发送
if (type == "GET" || type == "get") {
xhr.send(null);
} else if (type == "POST" || type == "post") {
xhr.setRequestHeader("content-type",
"application/x-www-form-urlencoded");
xhr.send(data);
}
xhr.onreadystatechange = function () {
if (xhr.readyState == && xhr.status == ) {
if (dataType == "TEXT" || dataType == "text") {
if (success != null) {
success(xhr.responseText);
} else if (dataType == "xml" || dataType == "XML") {
success(xhr.responseXML);
} else if (dataType == "json" || dataType == "JSON") {
success(eval("(" + xhr.responseText + ")"));
}
}
}
};
};
3.调用方式
Ajax({
type: "POST",
url: "LoginHandler.ashx",
data: "userName="+userName.value+"&password="+password.value,
dataType:"text",
success: function (data) {
alert(data);
}
});
简单了封装一下,能基本满足需求..可进行扩充
用javascript简单封装AJAX的更多相关文章
- JavaScript原生封装ajax请求和Jquery中的ajax请求
前言:ajax的神奇之处在于JavaScript 可在不重载页面的情况与 Web 服务器交换数据,即在不需要刷新页面的情况下,就可以产生局部刷新的效果.Ajax 在浏览器与 Web 服务器之间使用异步 ...
- javascript 【封装AJAX】
post function createXHR() { if (typeof XMLHttpRequest != 'undefined') { return new XMLHttpRequest(); ...
- 模拟jQuery简单封装ajax
/*模拟jQuery的写法 (简单写法)*/ var $={}; /*ajax*/ $.ajax = function (options) { /* * 请求 * 1.请求接口 type get po ...
- html --- ajax --- javascript --- 简单的封装
Ajax的简单封装 Ajax的全称是AsynchronousJavaScriptAndXML 如有疑问请参考:http://zh.wikipedia.org/zh-cn/AJAX 以及传智播客的视频教 ...
- 【Ajax 3】JavaScript封装Ajax
导读:上一篇博客简单介绍了一下对Ajax中的核心对象XMLHttpRequest的封装.那么为了方便对Ajax的应用,我们还需要进一步的对Ajax的基本功能进行下一步的封装,不得不说的是早就有人专门写 ...
- Jquery Ajax简单封装(集中错误、请求loading处理)
Jquery Ajax简单封装(集中错误.请求loading处理) 对Jquery Ajax做了简单封装,错误处理,请求loading等,运用到项目中集中处理会很方便. 技术层面没有什么好说的,请求是 ...
- 2016/11/17 周四 <javascript的封装简单示例>
这是一个简单的javascript代码封装的示例以及封装后的调用方法: var ticker={ n:0, add:function() { this.n++; }, show:function() ...
- ajax代码及简单封装
var xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); ...
- ajax简单封装
var xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); ...
随机推荐
- Mac下python初学之Image库(PIL)
Mac下python 使用Image库 安装PIL,下载http://www.pythonware.com/products/pil/ 解压PIL源码包,阅读README知道需要使用python se ...
- HTML5 <input>添加多张图片,可点击弹窗放大。限定4张,可删除。
点击弹窗放大,需要加入插件. <link rel="stylesheet" href="css/photoswipe.css"> <link ...
- SpringMVC拦截器(资源和权限管理)
1.DispatcherServlet SpringMVC具有统一的入口DispatcherServlet,所有的请求都通过DispatcherServlet. DispatcherServle ...
- WAP站点(IIS/Apache)的服务器设置
Server 端的设置IIS服务器:为了使IIS支持WAP(WML)页面的发布,在IIS的Web站点的属性 / HTTP信息中设置WAP的MIME属性,添加如下的MIME类型:扩展名 内容类型(MIM ...
- redis + spring 集成
1.pom <modelVersion>4.0.0</modelVersion> <groupId>com.x.redis</groupId> < ...
- Window远程连接Linux系统(CentOS7)
新开的云服务器是CentOS系统,基本操作按照腾讯云的介绍 http://www.qcloud.com/wiki/%E4%BB%8E%E6%9C%AC%E5%9C%B0Windows%E6%9C%BA ...
- Scala 高级编程练习
定义自己的控制结构,使它语言内置的用法一样 package exp object Main { def enableCustomerIF = false; def main(args: Array[S ...
- fuelphp 问题1
fuelphp遇到的一些小问题,写下来以防止别人遇到相同的问题,写的比较随意 1.引用到orm\model 报错:class Model_Test extends Orm\Model 报错内容:Cla ...
- Oracle查询
1.普通查询 select * from 表格 查询所有内容 select 列名,列名 from 表格查询某几列 2.条件查询 select * from 表格 where 条件 条件查询 selec ...
- C# MD5加密
public static string Encrypt(string txt) { System.Security.Cryptography.MD5CryptoServiceProvider md5 ...