调用AJAX

 1 <script type="text/javascript" src="ajax.js"></script>
2 <script type="text/javascript">
3 //调用包装好的ajax方法
4 ajax({
5 method : "get",
6 url : "get.php",
7 asyn : true,
8 data : "user=zym&password=1234",
9 fn : function( res ){
10 console.log( res );
11 }
12 });
13 </script>

打包好的ajax方法函数:

 1 function ajax( myJson ){
2 //新建ajax对象
3 var xhr = null;
4 window.XMLHttpRequest?(xhr=new XMLHttpRequest()):(xhr=new ActiveXObject("Microsoft.XMLHTTP"));
5 //定义数据传输方法“get”或“post”,如果没有写,那么默认的是用“get”方法!
6 var method = myJson.method||"get";
7 //定义数据传输的地址!
8 var url = myJson.url;
9 //定义数据加载方式(同步或异步),默认的情况下,使用ajax,都是异步加载!
10 var asyn = myJson.asyn||true;
11 //定义传输的具体数据!
12 var data = myJson.data;
13 //成功之后执行的方法!
14 var fn = myJson.fn;
15 //第一种情况:如果是用get方法,并且data是存在的,就执行:
16 if(method=="get"&&data){
17 xhr.open(method,url+"?"+data+"&"+Math.random(),asyn);
18 }
19 //第二种情况:如果是用post方法,并且data是存在的,就执行:
20 if(method=="post"&&data){
21 xhr.open(method,url,asyn);
22 xhr.setRequestHeader("content-type","application/x-www-form-urlencoded");
23 xhr.send(data);
24 }else{
25 xhr.send();
26 }
27 //数据传输成功之后
28 xhr.onreadystatechange=function(){
29 if(xhr.readyState==4){
30 if(xhr.status>=200&&xhr.status<300){
31 fn(xhr.responseText);
32 }else{
33 alert("程序出错!");
34 }
35 }
36 }
37 }

原生javascript包装一个ajax方法的更多相关文章

  1. Javascript:来一个AJAX封装函数

    前不久换工作了,最近一直在出差,忙得跟狗一样,所以博客都荒废许久了. 最近的工作中涉及到大量的ajax操作,本来该后台做的事也要我来做了.而现在使用的ajax函数是一个后台人员封装的—-但他又是基于 ...

  2. 类似jQuery的原生JS封装的ajax方法

    一,前言: 前文,我们介绍了ajax的原理和核心内容,主要讲的是ajax从前端到后端的数据传递的整个过程. Ajax工作原理和原生JS的ajax封装 真正的核心就是这段代码: var xhr = ne ...

  3. javascript 写一个ajax 自动拦截,并下载数据

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  4. 用原生js实现一个new方法

    首先写一个父类方法(包含参数name,age): function Person(name,age){ this.name = name; this.age = age; } new一个Person的 ...

  5. 原生JavaScript下的Ajax

    概述 AJAX即asynchronous javascript and XML,中文翻译是异步的javascript和XML.是指一种创建交互式网页应用.用于创建快速动态网页的开发技术. 传统的网页( ...

  6. 原生javaScript中使用Ajax实现异步通信

    AJAX本质就是在HTTP协议的基础上以异步的方式与服务器进行通信,所谓异步,就是指某段程序执行时不会阻塞其它程序执行,其表现形式为程序的执行顺序不依赖程序本身的书写顺序,相反则为同步. 以下开始简单 ...

  7. 在JavaScript文件中用ajax方法实现省市区的三级联动

    1.JavaScript Document $(document).ready(function(e) { 加载三个下拉列表 $("#sanji").html("< ...

  8. Ajax--Ajax基于原生javascript:创建Ajax对象、链接服务器、发送请求、接受响应结果

    Ajax概述 异步:指某段程序执行时不会阻塞其它程序执行,其表现形式为程序的执行顺序不依赖程序本身的书写顺序,相反则为同步. 同步请求: 请求是由浏览器发送 页面会刷新 异步请求: 请求是由浏览器的一 ...

  9. 使用原生JS封装一个ajax

    function ajax(data){ //第一步,创建XHR对象 var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHttpReque ...

随机推荐

  1. ps命令没有显示路径找到命令真实路径

    top发现某程序占用大量资源,但ps查看看不到程序真实路径,查找真实路径. ps aux |grep COMMAND 找到PID ls /proc/ 里边有很多数字文件夹,找到PID相应的文件夹进去看 ...

  2. 论文学习笔记 - Classifification of Hyperspectral and LiDAR Data Using Coupled CNNs

    Classifification of Hyperspectral and LiDAR Data Using Coupled CNNs 来源:IEEE TGRS 2020 下载:https://arx ...

  3. Linux操作系统的介绍和安装教程(Centos6.4)

    路漫漫其修远兮,吾将上下而求 Linux的简单介绍 Linux最初是由芬兰赫尔辛基大学学生Linus Torvalds开发的,由于自己不满意教学中使用的MINIX操作系统, 所以在1990年底由于个人 ...

  4. 记2020年初对SimpleGUI源码的阅读成果

    2020春节,阅读了下SimpleGUI源码,我一直喜欢边阅读,边手绘图片,所以这里只贴几张图片. 一,什么是SimpleGUI ? https://gitee.com/Polarix/simpleg ...

  5. 如何将Nginx注册为系统服务,开机自启动。

    亲测有效! 一般程序员在实际工作中,除了敲代码,很少有机会实际接触操作其它东西,例如服务器环境搭建,项目部署等等,不是领导信任或项目组核心成员,应该是没有机会实际接触的,只能通过网上资料稍微了解一下. ...

  6. servlet post response.sendRedirect 乱码

    response.sendRedircet一般用于传递字符串参数 常会出现乱码: 情景1: post表单提交,跳转后的servlet,通过getParameter(name)进行解码,获取的中文乱码 ...

  7. mongodb 数据操作CRUD

    链接到mongo 新建超级用户 上文中我们提到mongo用户库表管理.为了方便我们先新建一个root权限的用户. db.createUser({user:'dbadmin',pwd:'123456', ...

  8. http与https随笔

    http: 超文本传输协议.使用TCP/IP协议 https: 安全超文本传输协议.使用TLS/SSL协议 不同: 1.安全 http是明文传输.http是具有安全性的SSL加密传输协议. https ...

  9. WinSocket01

    启动windows平台下的Socket 1 #define WIN32_LEAN_AND_MEAN 2 #include<windows.h> 3 #include<WinSock2 ...

  10. codefroces中的病毒,这题有很深的trick,你能解开吗?

    大家好,欢迎阅读周末codeforces专题. 我们今天选择的问题是contest 1419的C题,目前有接近8000的人通过了本题.今天这题的难度不大,但是真的很考验思维,一不小心就会踩中陷阱,我个 ...