一:什么是Ajax?
Ajax:异步的JavaScript和XML,用于完成网页局部刷新功能(修改少量数据只用局部刷新,不用再整个网页重新加载);
XML的作用:1.是用于数据传输,但现在都在使用JSON
2.用于存取数据(已经不用),被数据库取代
3.用于写配置文件,现在还在少量使用,逐渐被注解取代
注意:Ajax请求不能写跳转(1.会报错。2.把跳转的页面当作字符串传回去)
二:使用原生的方式实现Ajax
1、创建一个Ajax对象
从Ajax对象xhr创建开始,它的所有操作都被监听
xhr本身是有一个状态的概念,这个状态:readyState
0(为初始化):对象已经建立,但是尚未初始化(尚未调用open)方法
1(初始化):对象已建立,尚未调用send方法
2(发送数据):send方法已经调用,但是当前的状态及http头未知
3(数据发送中):已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误
4(完成):数据接收完毕,此时可以通过responseBody和responseText获取完整的回应数据
//内置了一个类:XMLHttpRequest;兼容IE需要创建ActiveXobject
//在js中,所有变量定义都使用var
var xhr= new XMLHttpRequest();
2、准备请求 .open(methodType(请求类型),methodUrl(请求到后端的地址),isSys(是否异步)):请求类型:get/post。是否异步:默认为true
注意:如果要传参的话,get请求在路径中传参数,post请求在send中传参
//get请求
xhr.open("get","/地址?传到后台的参数");
//post请求
xhr.open("post","/login");
//如果是post请求,必须设置请求头的类型,后台才能够接收到前台传过去的相应的数据;当然,get请求不需要设置
xhr.setRequestHeader("Content-t