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 相关文章推荐
JavaScript实现网页图片等比例缩放实现代码及调用方式
Feb 25 Javascript
js时间日期格式化封装函数
Dec 02 Javascript
jQuery浏览器CSS3特写兼容实例
Jan 19 Javascript
下雪了 javascript实现雪花飞舞
Aug 02 Javascript
JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法
Jun 05 Javascript
BootStrap使用popover插件实现鼠标经过显示并保持显示框
Jun 23 Javascript
最通俗易懂的javascript变量提升详解
Aug 05 Javascript
vue-cli 构建骨架屏的方法示例
Nov 08 Javascript
vue实现输入一位数字转汉字功能
Dec 13 Javascript
微信小程序基于movable-view实现滑动删除效果
Jan 08 Javascript
es6函数之箭头函数用法实例详解
Apr 25 Javascript
vue 如何使用递归组件
Oct 23 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
thinkphp模板的包含与渲染实例分析
2014/11/26 PHP
php对象和数组相互转换的方法
2015/05/12 PHP
PHP配合fiddler抓包抓取微信指数小程序数据的实现方法分析
2020/01/02 PHP
FireFox与IE 下js兼容触发click事件的代码
2008/11/20 Javascript
jquery实现带复选框的表格行选中删除时高亮显示
2013/08/01 Javascript
js replace替换所有匹配的字符串
2014/02/13 Javascript
动态创建script标签实现跨域资源访问的方法介绍
2014/02/28 Javascript
jQuery实现的AJAX简单弹出层效果代码
2015/11/26 Javascript
浅谈Javascript中的12种DOM节点类型
2016/08/19 Javascript
jQuery中常用动画效果函数(日常整理)
2016/09/17 Javascript
微信小程序 闭包写法详细介绍
2016/12/14 Javascript
使用jsonp实现跨域获取数据实例讲解
2016/12/25 Javascript
详解webpack打包vue时提取css
2017/05/26 Javascript
基于nodejs 的多页面爬虫实例代码
2017/05/31 NodeJs
ReactNative Image组件使用详解
2017/08/07 Javascript
原生js实现省市区三级联动代码分享
2018/02/12 Javascript
Promise.all中对于reject的处理方法
2018/08/01 Javascript
微信小程序音乐播放器开发
2019/11/20 Javascript
js实现简单点赞操作
2020/03/17 Javascript
Python线性回归实战分析
2018/02/01 Python
python tensorflow学习之识别单张图片的实现的示例
2018/02/09 Python
python requests.post带head和body的实例
2019/01/02 Python
对python模块中多个类的用法详解
2019/01/10 Python
Python制作动态字符图的实例
2019/01/27 Python
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
2019/06/04 Python
浅析PyTorch中nn.Linear的使用
2019/08/18 Python
python 3.7.4 安装 opencv的教程
2019/10/10 Python
Python大数据之网络爬虫的post请求、get请求区别实例分析
2019/11/16 Python
Python selenium抓取虎牙短视频代码实例
2020/03/02 Python
Python爬虫爬取百度搜索内容代码实例
2020/06/05 Python
为2021年的第一场雪锦上添花:用matplotlib绘制雪花和雪景
2021/01/05 Python
html5中去掉input type date默认样式的方法
2018/09/06 HTML / CSS
校园之星获奖感言
2014/01/29 职场文书
物流管理系毕业生求职信
2014/06/03 职场文书
离婚协议书怎么写(范本参考)
2014/09/30 职场文书
Memcached介绍及php-memcache扩展安装
2021/04/01 PHP