Ajax

一、Ajax是什么

异步的JavaScript与XML(JSON),主要是完成局部刷新

核心:XMLHttpRequest

二、Ajax的基本使用

1.Ajax创建

普通:new XMLHttpRequest()

低版本IE:new ActiveXObject()

兼容方法: 

 function getAjax() {
        if (XMLHttpRequest) {
            return new XMLHttpRequest();
        } else if (ActiveXObject) {//兼容低版本IE
            return new ActiveXObject();
        }
    }

2.open方法==>准备请求

基本形式open(bstrMethod,bstrUrl,varAsync)

1.bstrMethod:请求的方法(get/post)

2.bstrUrl:服务器IP地址,访问的路径

3.是否异步传输,默认为true

3.监听ajax状态变化 onreadystatechange

ajax.onreadystatechange = function(){

    if(readyState == 4){

        //数据传输完毕执行的内容
    }

} 

4.readyState: 返回ajax对象请求的状态(0-4)

0==> 未初始化,对象已建立,尚未调用open();

1==>初始化,对象已建立,尚未调用send();

2==>发送数据,send方法已调用但是当前状态以及HTTP头未知;

3==>数据传送中,已接收部分数据,但HTTP头信息不全;

4==>数据接收完毕,此时可使用responseBody以及responseText获取回应数据 

 

5.status:返回当前请求的http状态码 200==>代表成功 

6.send()==>发送请求

send(varBody)

varBody:欲通过此请求发送的数据,只有POST才使用

7.ajax.setRequestHeader(key,value)==>设置请求头

若为POST方式请求则需要在open方法后面加上: ajax.setRequestHeader(“Content-type”,"application/x-www-form-urlencode""),否则会出现乱码

8.ajax.responseText:获取到的值只能为字符串

注意事项:

1.后端不进行页面跳转(会直接返回页面代码内容) 

2.返回的肯定是字符串

3.后端不能使用println,会有换行,影响判断值

4.浏览器的缓存问题(解决方法:在url中传值_timer = new Date().getTime())

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值