AJAX的工做流程
XMLHttpReques对象经常使用属性
readyState
返回请求的当前状态,每次状态改变都会改变此值
经常使用值:
0--未开始化
1--开始发送请求
2--请求发送完成
3--开始读取响应
4--读取响应结束javascript
status
返回当前请求的HTTP代码状态
经常使用值:
200--正确返回
404--找不到访问对象
responseText
以文本形式获取响应值
responseXML
以XML形式获取相应值,而且解析成DOM对象返回
statusText
返回当前的响应行状态html
onreadystatechange
设置回调函数java
XMLHttpReques对象经常使用方法jquery
open(method,url,async,user,password)
用于建立一个新的HTTP请求
参数method:设置HTTP请求方法,好比GET POST等
参数url:请求的URL地址
参数async:可选,指定请求是否为异步方法,默认为true
参数user:可选,若是服务器须要验证,此处须要指定用户名
参数password:可选,指定服务器的密码。
send(data)
发送请求到服务端
若是是POST请求须要填写参数,若是是GET则为null
abort()
取消当前请求
setRequestHeader(header,value)
单独设置请求的某个HTTP头信息
header:要指定的HTTP头名称
value:指定HTTP头名称对应的值
getResponseHeader(headerName)
从响应中获取指定的HTTP头信息
getAllResponseHeaders()
获取响应全部HTTP头信息
使用javascript来实现异步提交
var xmlHttpRequest;
function ajaxTest() {
//建立 xmlHttpRequest 对象
if (window.XMLHttpRequest){
xmlHttpRequest = new XMLHttpRequest();
} else {
xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP")
}
//设置回调函数
xmlHttpRequest.onreadystatechange = call;
//初始化xmlHttpRequest
xmlHttpRequest.open("GET","url", true);
//GET 使用GET方式访问,这里也能够设置成POST
//url url地址,也能够是带有参数的url地址
//true(默认值) 指定此请求是否为异步方法。
//提交请求
xmlHttpRequest.send(null);
//因为咱们是经过GET请求,地址栏传递参方式请求的因此为null
//若是为POST方式则须要指定参数,参数为String类型.
}
function call() {
//获取文本响应值,此值能够自定义
if (xmlHttpRequest.responseText == "true"){
}
}
使用jquery实现异步提交(在jquery中封装了上面的代码)ajax
$.ajax({
type:"POST",
url:"check_user.jsp",
data:"name" + uname,
dataType:"html",
success:function (mas) {
if ($.trim(mas) == "true"){
$("#user_info").html("★ 用户名被使用");//用户名被使用
} else {
$("#user_info").html("☆ 能够注册");
}
}
});type:提交方式
url:提交地址
data:提交参数
dataType:返回消息类型
success:成功后调用函数。mas表示返回的信息。