异步请求的多种实现方法

一、基于JavaScript的原生方法

//创建XMLHttpRequest对象
var xhr;
if (window.XMLHttpRequest) {
	//非IE6
	xhr = new XMLHttpRequest();
} else {
	xhr = new ActiveXObject('Microsoft.XMLHTTP');
}
xhr.open("get","servlet?name=testParam",true);// open必须放在最前面,第一个参数指定post或者get请求
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xhr.send("id=123456");
xhr.onreadystatechange=function(){
	if(xhr.readyState == 4 && xhr.status == 200) {
		var result = xhr.responseText;
		alert(result);
    }
}
注:具体的还可以设置很多东西,过于复杂,不再详细介绍,不推荐使用。

二、基于JQuery(推荐使用)

(1) $.getJSON(url,[data],[callback])

$.getJSON("/user/query/" + id,function(data){
var paramData = JSON.parse(data);
alert(data.name);
})

参数可以携带在url后面,也可以单独写出来。

(2) $.Ajax()

$.ajax({
type:"GET",//请求方式为get或者post
url:"servletUrl",//请求的url
data:{name:"zhangSan"},//发送到服务器的参数
dataType:"text",//服务器响应的数据类型
success:function(data){
alert(data);
}                

})

(3) $.post(url,[data],[callback]) / $.get(url,[callback])

这两个写法基本一致,get方式参数在url后面,post方式参数可接在url后面,也可以单独写出来

$.post("servletURL",{sex:"man"},function(data){

    alert(data);

},"text");


$.get("servletURL?sex=man",function(data){

    alert(data);

},"text");





猜你喜欢

转载自blog.csdn.net/qq_39056805/article/details/80568585
今日推荐