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 相关文章推荐
js中将多个语句写成一个语句的两种方法小结
Dec 08 Javascript
JavaScript 学习笔记(五)
Dec 31 Javascript
JavaScript跨浏览器获取页面中相同class节点的方法
Mar 03 Javascript
js实现微信分享代码
Oct 11 Javascript
Vue数据驱动模拟实现5
Jan 13 Javascript
基于Marquee.js插件实现的跑马灯效果示例
Jan 25 Javascript
Node.js 8 中的重要新特性
Jun 28 Javascript
js中的 || 与 &amp;&amp; 运算符详解
May 24 Javascript
JavaScript控制浏览器全屏显示简单示例
Jul 05 Javascript
微信小程序云开发实现增删改查功能
May 17 Javascript
通过图带你深入了解vue的响应式原理
Jun 21 Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
Aug 04 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
在PHP3中实现SESSION的功能(一)
2006/10/09 PHP
发款php蜘蛛统计插件只要有mysql就可用
2010/10/12 PHP
php数据结构与算法(PHP描述) 快速排序 quick sort
2012/06/21 PHP
PHP实现微信对账单处理
2018/10/01 PHP
JS 判断undefined的实现代码
2009/11/26 Javascript
js删除所有的cookie的代码
2010/11/25 Javascript
Javascript实现DIV滚动自动滚动到底部的代码
2012/03/01 Javascript
获取客户端电脑日期时间js代码(jquery)
2012/09/12 Javascript
JS 跳转页面延迟2种方法
2013/03/29 Javascript
jQuery设置div一直在页面顶部显示的方法
2013/10/24 Javascript
js jq 单击和双击区分示例介绍
2013/11/05 Javascript
js加入收藏以及使用Jquery更改透明度
2014/01/26 Javascript
extjs每个组件要设置唯一的ID否则会出错
2014/06/15 Javascript
再探JavaScript作用域
2014/09/24 Javascript
JS获取下拉框显示值和判断单选按钮的方法
2015/07/09 Javascript
javascript实现别踩白块儿小游戏程序
2015/11/22 Javascript
JS验证 只能输入小数点,数字,负数的实现方法
2016/10/07 Javascript
JS实现异步上传压缩图片
2017/04/22 Javascript
Angular.JS中指令ng-if、ng-show/ng-hide和ng-switch的使用教程
2017/05/07 Javascript
React实践之Tree组件的使用方法
2017/09/30 Javascript
jQuery插件artDialog.js使用与关闭方法示例
2017/10/09 jQuery
Vue-axios-post数据后端接不到问题解决
2020/01/09 Javascript
[49:42]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第一局
2016/03/04 DOTA
使用Python获取网段IP个数以及地址清单的方法
2018/11/01 Python
Pyqt助手安装PyQt5帮助文档过程图解
2020/11/20 Python
详解Css3新特性应用之过渡与动画
2017/01/10 HTML / CSS
学校元旦晚会方案
2014/02/19 职场文书
《长江之歌》教学反思
2014/04/17 职场文书
竞选村长演讲稿
2014/04/28 职场文书
119消防日活动总结
2014/08/29 职场文书
单位工作证明范文
2014/09/14 职场文书
2015年村党支部工作总结
2015/04/30 职场文书
银行柜员优质服务心得体会
2016/01/22 职场文书
nginx实现发布静态资源的方法
2021/03/31 Servers
面试被问select......for update会锁表还是锁行
2021/11/11 MySQL
Spring依赖注入多种类型数据的示例代码
2022/03/31 Java/Android