封装一个Ajax工具函数

对jquery的ajax封装 对常用jquery的ajax函数进行封装,便于调用,会有不同错误的错误提醒 立即下载

封装一个Ajax工具函数

原生JS简单实现Ajax

1、先写出调用函数 然后一步步分析封装
  // jQuery里面的Ajax就是这样的调用方式
   $.ajax({
           type:'get',                 // 请求方式
           url:'demo.php',             // 后台处理程序地址接口
           data:{name:'哈哈',age:22},  // 传输的数据
           callback:function(data){    // 回调函数
               // data为获取到的数据
               console.log(data);
           }
       });
2、引入一个命名空间
// 定义一个命名空间  防止全局污染
var $ = {
        // 传输数据处理函数
        joint:function(){},
        ajax:function(){}
};
3、首先对要传输的数据进行处理
  // data处理函数  将数据处理为 以key1=value1&key2=value2...格式输出
   joint:function(data){
       var d = '';
       // 遍历data数据
       for(var key in data){
           // 拼接为key1=value1&key2=value2...
           d += key + '=' + data[key] + '&';
       }
       // 去除最后一个&
       d = d.slice(0, -1);
       // 最后返回d
       return d;
   }
4、书写ajax函数
  // ajax
   ajax:function(obj){
       // type无数据时默认为get
       var type = obj.type || 'get';
       // url无数据时默认为当前地址
       var url = obj.url || location.pathname;
       // data数据处理 
       var data = this.joint(obj.data);

第一步new

  // 实例化
     var xhr = new XMLHttpRequest();
     // 判断为get提交时 改变url结构
     if(type == 'get'){
         url = url + '?' + data;
         data = null;
     }

第二个步open

  // 发出请求 请求行信息
     xhr.open(type,url);

第三步set

   // 判断为post提交时
     if(type == 'post'){
         // 为get提交时可以不写
         xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
     }

第四步send

     // 发送数据
     xhr.send(data);

监听响应状态并处理

      xhr.onreadystatechange = function(){
           // 处理成功
           // xhr.readyState = 4时  响应完成
           // xhr.status = 200  成功接收请求
           if(xhr.readyState == 4 && xhr.status ==200){
               // 获取响应的数据
               var data = xhr.responseText;
               // 获取响应头文件中的Content-Type信息
               var ct = xhr.getResponseHeader('Content-Type');
               // 转小写
               ct = ct.toLowerCase();
               // 判断为响应的为json格式的数据
               if(ct.indexOf('json') != -1){
                   // 将json格式的数据解析为JS类型的json数据
                   data = JSON.parse(data);
                   // 判断为响应的为XML格式数据
               }else if(ct.indexOf('xml') != -1){
                   // 获取XML数据
                   data = xhr.responseXML;
               }
               // 回调函数返回响应的数据
               obj.callback(data);
           }
       }
   }

源代码下载

自己封装一个ajax的小工具 平时用ajax较多 , 每次都引入jQuery只用这么一个小功能感觉太浪费 , 就自己封装一个工具. 立即下载

相关推荐

javascript 封装一个通用的Ajax function

封装一个通用的Ajax function 可以直接进行调用,需要传入的参数:回调函数,跳转的地址,需要传入的参数,method(get或post),失败后调用的函数 例如: var onerror = function() { alert("error"); } var callback = function(){ alert("回调函数"); } var parmas="parameter="+document.getElementById("").value; url ="Test/test" executeAjax2(callback, url, params, "POST", onerror); contentType可不用传入

Ajax 封装

介绍了原生ajax存在的问题,以及一步步完善对ajax进行封装

weixin_47505105的博客 5435

原生JS封装ajax方法,使用类似Jquery

原生js封装ajax,使用上类似jquery一样便捷,里边有示例,可以参考

ajax封装

ajax封装

m0_45884629的博客 2197

基于jQuery的ajax封装

基于Jquery的ajax的公共方法封装

weixin_45806058的博客 1796

封装一个ajax函数

异步获取abc.txt页面的内容 在js页面 function ajax(url,funSucc,funFaild){ //1、创建Ajax对象 var oAjax=null; if(window.XMLHttpRequest){ oAjax=new XMLHttpRequest(); }else{ oAjax=new ActiveXObject("Micros

chen_wen_xian的专栏 1923

封装ajax请求

点击这里即可获取,括答案解析。tps://bbs.csdn.net/topics/618191877),括答案解析。**[外链图片转存中…(img-fDzdYwP4-1711768231435)]

H1767410的博客 960

封装ajax工具函数

/** * Created by liyinghao on 2016/9/22. */ /*封装ajax工具函数*/ /*请求方式get post 数据格式xml json*/ /*考虑确定有哪些不确定的参数 * 1.请求方式 type get post 没有传递参数的时...

chujunwan6914的博客 117

ajax第二天(封装AJAX工具函数

1.封装AJAX工具函数 为了提升我们的开发效率,让用户在使用异步对象的时候通过调用一个相同的函数就可以实现需求,需要将XMLHttpRequest封装一个函数封装异步操作,兼容get和post请求方式 1. 封装的整体流程 封装函数的关键在于做判断: 找到操作的共同点–直接拷贝 找到不同的部分–以后就是参数 请求方式:type 请求url:url 请求参数不一样:data 请求数据类型–返回数据的格式:dataType 请求成功之后的数据处理函数:success:是一

qfCSDN的博客 269

(转)AJAX工具函数封装原码

/** * ajax工具函数-get * @param {*} url * @param {*} data(key1=value1&key2=value2) * @param {*} success */ function get(url, data, success) { var xhr = new XMLHttpRequest(); if (data) { ...

阿尤的甜崽的博客 165

类似ajax封装函数,封装ajax工具函数

/*** Created by liyinghao on 2016/9/22.*//*封装ajax工具函数*//*请求方式get post 数据格式xml json*//*考虑确定有哪些不确定的参数* 1.请求方式 type get post 没有传递参数的时候 get方式* 2.接口地址 url 地址如果没有传递,默认是当前的地址* 3.是否异步 async true ...

weixin_29454359的博客 204

使用jQuery封装Ajax请求

随着Web应用程序的发展,Ajax技术已被广泛应用于各种Web应用程序中。通过使用Ajax技术,可以提高用户体验和网站性能。而jQuery库则是目前最流行的JavaScript库之一,它简化了JavaScript开发和处理浏览器兼容性问题。在本文中,将介绍如何使用jQuery进行Ajax请求封装。jQuery是一个快速、小巧、功能丰富的JavaScript库,它提供了许多有用的API,可以简化JavaScript编程和处理浏览器兼容性问题。

m0_56186047的博客 2056

基于jQuery的ajax方法封装

AJAX 是一种用于创建快速动态网页的技术。这篇文章主要介绍了基于jQuery的ajax方法封装的相关资料,需要的朋友可以参考下

封装一个AJAX

原生AJAX AJAX 使用 XMLHttpRequest 对象进行请求发送和响应,局部刷新页面的技术。 流程: 生成 XMLHttpRequest 对象 let request = new XMLHttpRequest() 配置 XMLHttpRequest 对象 request.open('method','path') 发送请求 request.send() 监听 XMLHttpReque...

weixin_34238642的博客 126

AJAX封装一个AJAX

**ajax 使用异步的js向服务器发起网络请求,获取一些json数据前端发起网络请求给后端,后端会给我们一些数据。

qq_45587547的博客 186

异步编程Ajax的详解,并对其进行封装整理

对于Ajax,肯定很多小伙伴都听过甚至用过了,那么没听过的也不用着急,本文会对Ajax进行讲解,其次,一定还有一些人只用过JQuery封装好了的Ajax却对原生的Ajax并不了解,那么也不用着急,本文从最基本的Ajax开始讲起,然后最后会尽可能得模仿JQuery对其进行封装,让我刚才提到的两类人能对Ajax有进一步的了解。 公众号:Lpyexplore的编程小屋 关注我,不定时更新前端面试题 关注还有更多电子书、前端面试题、数据结构与算法代码等你来拿 异步编程——Ajax一、什么是Ajax二、Ajax

零一的博客 2万+

jQuery中Ajax实现&封装一个Ajax工具函数

封装一个Ajax工具函数 原生JS简单实现Ajax 1、先写出调用函数 然后一步步分析封装 // jQuery里面的Ajax就是这样的调用方式 $.ajax({ type:'get', // 请求方式 url:'demo.php', // 后台处理程序地址接口 ...

weixin_34323858的博客 241

Ajax封装

前端封装Ajax

weixin_51445423的博客 7600
下一篇: 模板引擎Template
PaddyWang_
博客等级 码龄11年 0粉丝 19原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值