Ajax简单总结
Ajax=异步JS和XML;
主要是局部的数据更新,即不需要刷新整个页面;
首先,需要新建一个XMLHttpRequest对象【这里注意如果是ie7以下的就是创建ActiveXObject】;
var xhr;
if(window.XMLHttpRequest){
xhr = new XMLHttpRequest();
}else{
xhr = new ActiveXObject("Microsoft.XMLHTTP")
}
然后,对其进行配置
【补充】:状态码:onreadystate=0/1/2/3/4
0:请求未初始化;
1:服务器连接已建立;
2:请求已接收;
3:请求处理中;
4:请求已完成,且响应就绪
xhr.onreadystatechange=function () {
if(xhr.readyState==4 && xhr.status==200){
console.log(xhr.responseText)
}
}
/**
* 提交方式:常用的是get、post两种,也有其他的,比如head等
* get方式用的比较多一点,因为更简单更快,并且大部分情况都能用;
* 但是,如果有以下情况,一般就推荐使用post了
* 1、需要传送大量数据时,(post没有大小限制,get有大小限制)
* 2、需要保密的数据,post更加安全可靠
* 3、无法使用缓存文件(更新服务器上的文件或数据库)
* true(异步) false(同步):默认是true,写时可以省略;
*/
//可以把参数单独写出来
var name =$("#fname").val();
var idcard =$("#idcard").val();
var params = "name="+name+"&idcard="+idcard;
xhr.open("get?"+params,"url",true/false);
xhr.open("post","url")
//如果是post请求方式,则需要加上请求头;
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xhr.send();//get
xhr.send(params);//post
【注意】如果是同步请求,那么不需要写onreadystatechange了,只需要把你要写在函数中的内容写在xhr.send()后面就可以了