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 验证表单(form)中多选框(checkbox)值
Sep 08 Javascript
基于jquery的不规则矩形的排列实现代码
Apr 16 Javascript
jQuery模拟Marquee实现无缝滚动效果完整实例
Sep 29 Javascript
js实现登录注册框手机号和验证码校验(前端部分)
Sep 28 Javascript
vue2.0+vuex+localStorage代办事项应用实现详解
May 31 Javascript
JavaScript基于数组实现的栈与队列操作示例
Dec 22 Javascript
Vue 中可以定义组件模版的几种方式
Aug 06 Javascript
JS获取表格视图所选行号的ids过程解析
Feb 21 Javascript
《javascript设计模式》学习笔记七:Javascript面向对象程序设计组合模式详解
Apr 08 Javascript
JavaScript代码压缩工具UglifyJS和Google Closure Compiler的基本用法
Apr 13 Javascript
js实现盒子移动动画效果
Aug 09 Javascript
在Vue中获取自定义属性方法:data-id的实例
Sep 09 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
Discuz板块横排显示图片的实现方法
2007/05/28 PHP
php at(@)符号的用法简介
2009/07/11 PHP
php foreach 参数强制类型转换的问题
2010/12/10 PHP
Erlang的运算符(比较运算符,数值运算符,移位运算符,逻辑运算符)
2012/07/23 PHP
php爬取天猫和淘宝商品数据
2018/02/23 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
PHP图像处理技术实例总结【绘图、水印、验证码、图像压缩】
2018/12/08 PHP
Jquery 一次处理多个ajax请求的代码
2011/09/02 Javascript
JS定时器实例详细分析
2013/10/11 Javascript
jQuery实现页面顶部显示的进度条效果完整实例
2015/12/09 Javascript
AngularJS实现select的ng-options功能示例
2017/07/12 Javascript
JS实现点击复选框变更DIV显示状态的示例代码
2017/12/18 Javascript
纯js代码生成可搜索选择下拉列表的实例
2018/01/11 Javascript
微信小程序使用canvas的画图操作示例
2019/01/18 Javascript
webpack4.x下babel的安装、配置及使用详解
2019/03/07 Javascript
ajaxfileupload.js实现上传文件功能
2019/04/19 Javascript
ES6之Proxy的get方法详解
2019/10/11 Javascript
[03:05]《我与DAC》之xiao8:DAC与BG
2018/03/27 DOTA
[51:44]2018DOTA2亚洲邀请赛 4.3 突围赛 Optic vs iG 第二场
2018/04/04 DOTA
[38:32]完美世界DOTA2联赛循环赛 Forest vs DM 第二场 11.06
2020/11/06 DOTA
python sqlobject(mysql)中文乱码解决方法
2008/11/14 Python
python以环状形式组合排列图片并输出的方法
2015/03/17 Python
Python 高级专用类方法的实例详解
2017/09/11 Python
解决Pycharm出现的部分快捷键无效问题
2018/10/22 Python
浅谈python写入大量文件的问题
2018/11/09 Python
如何在Django中设置定时任务的方法示例
2019/01/18 Python
详解python实现数据归一化处理的方式:(0,1)标准化
2019/07/17 Python
Python 中由 yield 实现异步操作
2020/05/04 Python
python字典与json转换的方法总结
2020/12/28 Python
Etam艾格英国官网:法国著名女装品牌
2019/04/15 全球购物
什么是数据抽象
2016/11/26 面试题
学校党员对照检查材料
2014/08/28 职场文书
2014年四风问题个人对照自查剖析材料
2014/09/15 职场文书
2014年保洁员工作总结
2014/11/19 职场文书
简历中自我评价范文
2015/03/11 职场文书
Python手拉手教你爬取贝壳房源数据的实战教程
2021/05/21 Python