微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ajax

一、原生

1、初始化

兼容性判断:

var xhr = null;
if(window.XMLHttpRequest) {
    var xhr = new XMLHttpRequest;
}else if(window.ActiveXObject) {
    var xhr = new XMLHttpRequest(“Microsoft.XMLHttp”)
}

2、设置onreadystatechange事件函数

xhr.onreadystatechange = function() {
    if(xhr.readyState === 4) {
        do something、、、、
    }
}    

xhr.readyState表示本次ajax对象的状态

  0:未初始化

  1:调用open方法

  2:响应头已经回来

  3:解析了一部分数据(存在于相应正文里)

  4:解析了全部数据,可以使用这些数据了

3、调用open方法

xhr.open(type,url,true)

  type:请求类型

  url:等价于form的action属性,表示将本次请求发送到那里去

  true:表示是否以异步形式发送;true表示异步,false表示同步

4、调用send方法

xhr.send(data)

  data:向请求正文中填写的数据,以“k=v&k1=v1”形式书写,如果是get请求,没必要填写

5、综合

AJAX发送步骤
var xhr = null;
if(window.XMLHttpRequest) {
    var xhr = new XMLHttpRequest();
}else if(window.ActiveXObject) {
    var xhr = new ActiveXObject("Microsoft.XMLHttp")
}
xhr.onreadystatechange = function() {
if(xhr.readystate === 4) {
        console.log(xhr.responsText)
    }
}
xhr.open(type,true);
xhr.send(data);

二、jQuery中ajax

1、发送get请求

$.get(url,data,callback)

  url:url字符串,表示要将本次请求发送到哪里

  data:携带的数据,可以hi字符串,对象,可以省略

  callback:回调函数,有一个形参data,就是本次传递回来的数据

demo:

$.get("/checkname","a=1&b=2",function(data) {
    console.log(data)
})

2、发送post请求

$.post(url,cllback)

三个参数与get参数相同

demo:

$.post("/checkname",query,function(data) {
    console.log(data)
})

3、发送任意请求

$.ajax(options)

  options:配置对象

    url:url字符串,表示本次请求发送到那里去

    type:请求类型

    data:携带的数据

    dataType:返回值的类型,json

    success:成功之后的回调函数

demo:

$.ajax({
    url: "/checkname",type: "get",data: {
        username: "张三"
    },
    dataType: "json",success: function(data) {
            console.log(data)
    }
})    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐