var http_request = false;
function send_request(method,url,content,responseType,callback){
http_request = false;
if(window.XMLHttpRequest) { //现代浏览器
http_request = new XMLHttpRequest();
if(http_request.overrideMimeType) {
http_request.overrideMimeType("text/xml");
}
} else if(window.ActiveXObject) { //老IE浏览器
try{
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {}
}
} if(!http_request) {
window.alert("Can't create XMLHttpRequest");
return false;
}
if(responseType.toLowerCase() == "text") {
//http_request.onreadystatechange = processTextResponse;
http_request.onreadystatechange = callback;
} else if(responseType.toLowerCase == "xml") {
//http_request.onreadystatechange = processXMLResponse;
http_request.onreadystatechange = callback;
} else {
window.alert("error");
return false;
} if(method.toLowerCase() == "get") {
http_request.open(method, url, true);
} else if(method.toLowerCase() == "post") {
http_request.open(method, url, true);
http_request.setRequestHeader("content-Type","application/x-www-form-urlencoded");
} else {
window.alert("http request error");
return false;
}
http_request.send(content);
} function processTextResponse() {
if(http_request.readyState == 4) {
if(http_request.status == 200) {
alert(http_request.responseText);
} else {
alert("request error");
}
}
} function processXMLResponse() {
if(http_request.readyState == 4) {
if(http_request.status == 200) {
alert(http_request.responseXML);
} else {
alert("request error");
}
}
}

AJAX原生JS代码的更多相关文章

  1. 原生JS代码实现一个Ajax异步请求

    异步加载的方式 (1) defer,只支持IE (2) async: (3) 创建script,插入到DOM中,加载完毕后callBack 实现ajax之前必须要创建一个 XMLHttpRequest ...

  2. 奇舞js笔记——第0课——如何写好原生js代码

    摘要 1.好的代码职责要清晰,javscript不要用来操作样式: 2.API要设计的合理:通用性,适度的抽象(数据抽象,过程抽象),可扩展性: 3.效率问题:用好的.合适的算法(前端程序员要把自己当 ...

  3. Jquery揭秘系列:ajax原生js实现

    讲到ajax这个东西,我们要知道两个对象XMLHTTPRequest和ActiveXObject ,提供了对 HTTP 协议的完全的访问,包括做出 POST 和 HEAD 请求以及普通的 GET 请求 ...

  4. Ajax分页js代码

    var pageIndex = 0; var pageSize = 10; $(function () { $("#btnSearch").click(function () { ...

  5. 特效合集(原生JS代码)适合初学者

    1.返回顶部(完全兼容各个浏览器,不含美化) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" & ...

  6. jsonp原生js代码示例

    /* mightygumball.js */ /* * get the content of a JSON file using JSONP * update every 3 seconds. * * ...

  7. 第110天:Ajax原生js封装函数

    一.Ajax的实现主要分为四部分: 1.创建Ajax对象 // 创建ajax对象 var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHtt ...

  8. ajax原生js及readystate/status

    菜鸟教程 ←← GET: <script> function  ajaxGet(){ var  xmlhttp; if(window.XMLHttpRequest){ //TE7+  Fi ...

  9. ajax 原生js封装ajax [转]

    /* 封装ajax函数 * @param {string}opt.type http连接的方式,包括POST和GET两种方式 * @param {string}opt.url 发送请求的url * @ ...

随机推荐

  1. AndroidUI设计之布局-详细解析布局实现

    写完博客的总结 : 以前没有弄清楚的概念清晰化 父容器与本容器属性 : android_layout...属性是本容器的属性, 定义在这个布局管理器的LayoutParams内部类中, 每个布局管理器 ...

  2. 简单排序,C# 直接使用 List。

    List<string> list = new List<string>(); list.Add("sdfs"); list.Add("ef&qu ...

  3. EF 分组查询

    var result = from m in userPrefers.GroupBy(t => new { t.Pet_Preferential.Merchant.MerchantId, t.P ...

  4. Tab切换

    代码 <!DOCTYPE html> <html lang="en"><head> <meta charset="UTF-8&q ...

  5. type="file" 选择图片后预览

    function setImagePreview(avalue) { var docObj = document.getElementById("doc"); var imgObj ...

  6. Centos6.4 aria2 webui-aria2

    wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm rpm -ivh ...

  7. [翻译练习]密码学1小时入门 (Everything you need to know about cryptography in 1 hour)

    原文:http://www.daemonology.net/papers/crypto1hr.pdf   [密码学简介]   很多人都误用了密码学   一般可归为三类: 1. 愚蠢 比如Google ...

  8. linux svn 用户配置

    1:创建存放仓库的目录 mkdir -p /home/svn/ 2:创建svn仓库 svnadmin create /home/svn/evansource 3:配置仓库(一共三个文件夹auzhz.p ...

  9. 十、DG

    1.DG是dependency graph,我认为是依赖图,和DAG(有向无环图)的区别:DAG用来做场景管理,每个node代表的不是tranform就是shape,有父子关系. DG是代表了每个实体 ...

  10. 初识Lucene.net

    最近想提高下自己的能力,也是由于自己的项目中需要用到Lucene,所以开始接触这门富有挑战又充满新奇的技术.. 刚刚开始,只是写了个小小的demo,用了用lucene,确实很好   创建索引 Data ...