Javascript原生ajax请求代码实例


Posted in Javascript onFebruary 20, 2020

这篇文章主要介绍了Javascript原生ajax请求代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

代码如下

class Ajax{

  constructor(url, method, data, callback_suc, callback_err, callback_run){
   this.RT = true;//默认为异步请求
   this.url = url;
   this.method = method || "POST";
   this.data = data || "";
   this.callback_suc = callback_suc || function () {};
   this.callback_err = callback_err || function () {};
   this.callback_run = callback_run || function () {};
   if(!this.url){this.callback_err(); return;}
   this.createRequest();
  }

  createRequest(){
   let xhr = new XMLHttpRequest();
   xhr.onreadystatechange = (e)=>{this.run(e);}
   xhr.open(this.method, this.url, this.RT);
   xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   xhr.send(this.data);
  }

  run(e){
   this.callback_run(e);
   if(e.target.readyState !== 4 || e.target.status !== 200){return;}
   this.callback_suc(e);
  }

 }
 //调用:
 new Ajax(
  "./main.php", //url:请求地址
  "POST", //method:请求方法
  "data=3&sb=2",//data:传递数据
  (e)=>{//callback_suc:请求完成 回调函数
   document.write(e.target.responseText);//3
  },
  (e)=>{},//callback_err:请求错误 回调函数
  (e)=>{}//callback_run:请求中 回调函数
 )

上面是js代码

下面以main.php为例接收请求

<?php
 //接收客户端请求数据data和sb
 $data = isset($_POST['data']) ? $_POST['data'] : "data为空";
 $sb = isset($_POST['sb']) ? $_POST['sb'] : "sb为空";
 //向客户端返回数据
 echo $data." ".$sb;
?>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
xtree.js 代码
Mar 13 Javascript
JQuery中的ready函数冲突的解决方法
May 17 Javascript
本地对象Array的原型扩展实现代码
Dec 04 Javascript
通过JS获取用户本地图片路径并显示的代码
Feb 16 Javascript
jQuery操作input type=radio的实现代码
Jun 14 Javascript
关于JavaScript与HTML的交互事件
Apr 12 Javascript
详解AngularJS中的http拦截
Feb 09 Javascript
正则中的回溯定义与用法分析【JS与java实现】
Dec 27 Javascript
详解bootstrap的modal-remote两种加载方式【强化】
Jan 27 Javascript
jQuery实现ajax无刷新分页页码控件
Feb 28 Javascript
JS实现小球的弹性碰撞效果
Nov 11 Javascript
nginx+vue.js实现前后端分离的示例代码
Feb 12 Javascript
webpack中的模式(mode)使用详解
Feb 20 #Javascript
jquery向后台提交数组的代码分析
Feb 20 #jQuery
koa-passport实现本地验证的方法示例
Feb 20 #Javascript
javaScript 实现重复输出给定的字符串的常用方法小结
Feb 20 #Javascript
一篇文章带你浅入webpack的DLL优化打包
Feb 20 #Javascript
浅析JS中NEW的实现原理及重写
Feb 20 #Javascript
JS通过识别id、value值对checkbox设置选中状态
Feb 19 #Javascript
You might like
一个oracle+PHP的查询的例子
2006/10/09 PHP
配置PHP使之能同时支持GIF和JPEG
2006/10/09 PHP
用php和MySql来与ODBC数据连接
2006/10/09 PHP
非常不错的功能强大代码简单的管理菜单美化版
2008/07/09 Javascript
js中Image对象以及对其预加载处理示例
2013/11/20 Javascript
javascript函数重载解决方案分享
2014/02/19 Javascript
Chrome下ifame父窗口调用子窗口的问题示例探讨
2014/03/17 Javascript
jquery中的常用事件bind、hover、toggle等示例介绍
2014/07/21 Javascript
js计算德州扑克牌面值的方法
2015/03/04 Javascript
JS实现简单的图书馆享元模式实例
2015/06/30 Javascript
jQuery实现Tab菜单滚动切换的方法
2015/09/21 Javascript
js 原型对象和原型链理解
2017/02/09 Javascript
Node.js读取文件内容示例
2017/03/07 Javascript
BootstrapTable加载按钮功能实例代码详解
2017/09/22 Javascript
JS实现动态生成html table表格的方法分析
2018/07/11 Javascript
js实现无缝轮播图
2020/03/09 Javascript
vuex实现购物车功能
2020/06/28 Javascript
[01:52]深扒TI7聊天轮盘语音出处7
2017/05/11 DOTA
Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法
2015/05/20 Python
解决python3爬虫无法显示中文的问题
2018/04/12 Python
python numpy 部分排序 寻找最大的前几个数的方法
2018/06/27 Python
Python要如何实现列表排序的几种方法
2020/02/21 Python
深度学习入门之Pytorch 数据增强的实现
2020/02/26 Python
django迁移文件migrations的实现
2020/03/31 Python
用CSS3将你的设计带入下个高度
2009/08/08 HTML / CSS
css3 flex布局 justify-content:space-between 最后一行左对齐
2020/01/02 HTML / CSS
阿玛尼化妆品美国官网:Giorgio Armani Beauty
2017/02/02 全球购物
新西兰第一的行李箱网站:luggage.co.nz
2019/07/22 全球购物
"引用"与指针的区别是什么
2016/09/07 面试题
土木工程个人自荐信范文
2013/11/30 职场文书
应聘编辑职位自荐信范文
2014/01/05 职场文书
厨房领班竞聘演讲稿
2014/04/23 职场文书
团队会宣传标语
2014/10/09 职场文书
计划生育汇报材料
2014/12/26 职场文书
Django操作cookie的实现
2021/05/26 Python
vue组件vue-esign实现电子签名
2022/04/21 Vue.js