javascript实现原生ajax的几种方法介绍

 更新时间:2013年09月21日 12:20:39   作者:  
项目中不需要加载jquery这种庞大的js插件要使用到ajax这种功能该如何办呢?下面和大家分享几种利用javascript实现原生ajax的方法

自从javascript有了各种框架之后,比如jquery,使用ajax已经变的相当简单了。但有时候为了追求简洁,可能项目中不需要加载jquery这种庞大的js插件。但又要使用到ajax这种功能该如何办呢?下面和大家分享几种利用javascript实现原生ajax的方法。

实现ajax之前必须要创建一个 XMLHttpRequest 对象。如果不支持创建该对象的浏览器,则需要创建 ActiveXObject,具体方法如下:

复制代码 代码如下:

var xmlHttp;
function createxmlHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} else if (window.XMLHttpRequest) {
xmlHttp=new XMLHttpRequest();
}

(1)下面使用上面创建的xmlHttp实现最简单的ajax get请求:
复制代码 代码如下:

function doGet(url){
// 注意在传参数值的时候最好使用encodeURI处理一下,以防出现乱码
createxmlHttpRequest();
xmlHttp.open("GET",url);
xmlHttp.send(null);
xmlHttp.onreadystatechange = function() {
if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
alert('success');
} else {
alert('fail');
}
}
}

(2)使用上面创建的xmlHttp实现最简单的ajax post请求:
复制代码 代码如下:

function doPost(url,data){
// 注意在传参数值的时候最好使用encodeURI处理一下,以防出现乱码
createxmlHttpRequest();
xmlHttp.open("POST",url);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttp.send(data);
xmlHttp.onreadystatechange = function() {
if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
alert('success');
} else {
alert('fail');
}
}
}

相关文章

  • 详解使用Next.js构建服务端渲染应用

    详解使用Next.js构建服务端渲染应用

    这篇文章主要介绍了详解使用Next.js构建服务端渲染应用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • elementUI Table 自定义表头动态数据及插槽的操作

    elementUI Table 自定义表头动态数据及插槽的操作

    本文介绍了如何实现一个高度自定义的列表界面,其中表格的表头由后端返回,并且允许用户根据需求自定义表头和数据展示样式,本文给大家介绍elementUI Table 自定义表头动态数据及插槽的操作,感兴趣的朋友跟随小编一起看看吧
    2024-10-10
  • 微信小程序自定义联系人弹窗

    微信小程序自定义联系人弹窗

    这篇文章主要为大家详细介绍了微信小程序自定义联系人弹窗,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-05-05
  • 老生常谈JavaScript 数组方法

    老生常谈JavaScript 数组方法

    本文详细介绍了JavaScript数组方法的分类和具体用法,涵盖了数组的添加/删除、查找/访问、遍历、排序/反转、转换以及一些其他实用方法,每种方法都提供了简要的解释和示例代码,帮助读者更好地理解和应用这些方法,感兴趣的朋友一起看看吧
    2025-03-03
  • 详谈ES6中的迭代器(Iterator)和生成器(Generator)

    详谈ES6中的迭代器(Iterator)和生成器(Generator)

    下面小编就为大家带来一篇详谈ES6中的迭代器(Iterator)和生成器(Generator)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • Axios设置token请求头的三种方式

    Axios设置token请求头的三种方式

    用户登录时,后端会返回一个token,并且保存到浏览器的localstorage中,可以根据localstorage中的token判断用户是否登录,所以当发送请求时,都要携带token给后端进行判断,本文给大家介绍了Axios设置token请求头的三种方式,需要的朋友可以参考下
    2024-02-02
  • JS new操作原理及手写函数模拟实现示例

    JS new操作原理及手写函数模拟实现示例

    这篇文章主要为大家介绍了JS new操作原理及手写函数模拟实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • IE与FireFox中的childNodes区别

    IE与FireFox中的childNodes区别

    Javascript中,相信大家都试过用getElementsByTagName和childNodes来实现对节点的遍历
    2011-10-10
  • JS异步的执行顺序分析

    JS异步的执行顺序分析

    这篇文章介绍了JS异步的执行顺序,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • javaScript实现支付10秒倒计时

    javaScript实现支付10秒倒计时

    这篇文章主要为大家详细介绍了javaScript实现支付10秒倒计时,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10

最新评论