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 相关文章推荐
jQuery学习笔记[1] jQuery中的DOM操作
Dec 03 Javascript
jQuery EasyUI API 中文文档 - NumberBox数字框
Oct 13 Javascript
12种不宜使用的Javascript语法整理
Nov 04 Javascript
可选择和输入的下拉列表框示例
Nov 05 Javascript
Javascript显示和隐藏ul列表的方法
Jul 15 Javascript
jQuery实现下拉菜单(内容为时间)的实时更新及图表的随动更新的方法
Jul 07 Javascript
10个最优秀的Node.js MVC框架
Aug 24 Javascript
Angular中封装fancyBox(图片预览)遇到问题小结
Sep 01 Javascript
Vue 实现拖动滑块验证功能(只有css+js没有后台验证步骤)
Aug 24 Javascript
JS+canvas画布实现炫酷的旋转星空效果示例
Feb 13 Javascript
vue router导航守卫(router.beforeEach())的使用详解
Apr 19 Javascript
vue.js 解决v-model让select默认选中不生效的问题
Jul 28 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
WordPress中用于创建以及获取侧边栏的PHP函数讲解
2015/12/29 PHP
Yii2实现UploadedFile上传文件示例
2017/02/15 PHP
JavaScript开发时的五个注意事项
2007/12/08 Javascript
formvalidator验证插件中有关ajax验证问题
2013/01/04 Javascript
jquery 实现窗口的最大化不论什么情况
2013/09/03 Javascript
JS delegate与live浅析
2013/12/21 Javascript
使用typeof方法判断undefined类型
2014/09/09 Javascript
让angularjs支持浏览器自动填表
2014/11/10 Javascript
JavaScript实现的内存数据库LokiJS介绍和入门实例
2014/11/17 Javascript
javascript检查浏览器是否已经启用XX功能
2015/07/10 Javascript
JS实现不规则TAB选项卡效果代码
2015/09/16 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
浅谈vue项目优化之页面的按需加载(vue+webpack)
2017/12/11 Javascript
vue后台管理之动态加载路由的方法
2018/08/13 Javascript
微信小程序五子棋游戏的棋盘,重置,对弈实现方法【附demo源码下载】
2019/02/20 Javascript
JavaScript 严格模式(use strict)用法实例分析
2020/03/04 Javascript
node+vue实现文件上传功能
2020/05/28 Javascript
vue+elementUI 实现内容区域高度自适应的示例
2020/09/26 Javascript
微信小程序实现电影App导航和轮播
2020/11/30 Javascript
[02:17]快乐加倍!DOTA2食人魔魔法师至宝+迎霜节活动上线
2019/12/22 DOTA
python 布尔操作实现代码
2013/03/23 Python
全面解读Python Web开发框架Django
2014/06/30 Python
在Python中使用cookielib和urllib2配合PyQuery抓取网页信息
2015/04/25 Python
一个月入门Python爬虫学习,轻松爬取大规模数据
2018/01/03 Python
python+selenium实现自动抢票功能实例代码
2018/11/23 Python
python树莓派红外反射传感器
2019/01/21 Python
Python logging自定义字段输出及打印颜色
2020/11/30 Python
Python 将代码转换为可执行文件脱离python环境运行(步骤详解)
2021/01/25 Python
欧洲最大的球衣网上商店:Kitbag
2017/11/11 全球购物
YOOX台湾:意大利奢侈品电商
2018/10/13 全球购物
乡下人家教学反思
2014/02/01 职场文书
民事赔偿协议书
2014/11/02 职场文书
2015年党支部书记工作总结
2015/05/21 职场文书
中学生运动会广播稿
2015/08/19 职场文书
OpenCV3.3+Python3.6实现图片高斯模糊
2021/05/18 Python
java.util.NoSuchElementException原因及两种解决方法
2022/06/28 Java/Android