AJAX 解决什么问题?
- AJAX 解决的问题就是“无刷新更新页面”,用传统的 HTML 表单方式进行页面的更新时,每次都要将请求提交到服务器,服务器返回后再重绘界面,这样界面就会经历:提交→变白→重新显示这样一个过程,用户体验非常差,使用 AJAX 则不会导致页面重新提交、刷新。
如何使用 AJAX?
- AJAX最本质的实现是在JavaScript中使用XMLHttpRequest进行Http的请求,对于复杂的需求则可以使用 JQuery提供的 ajax 功能。
var xhr;
//XMLHttpRequest兼容性处理
if(window.XMLHttpRequest){
xhr= new XMLHttpRequest();
}else{
// alert("不存在");
xhr= new ActiveXObject("Microsoft.XMLHTTP");
}
//指定请求的方式post/get,url,true/false(异步/同步)
xhr.open("POST", url , true);
//请求状态改变时触发
xhr.onreadystatechange = function(){
//数据接受完成,服务器返回的http状态码,200表示成功
if (xhr.readyState === 4 && xhr === 200) {
var text = XMLHttpReq.responseText;//服务器响应的文本内容
}
xhr.send();//向服务器发送请求
AJAX 有什么问题需要注意?
- AJAX最重要的问题是无法跨域请求,也就是无法在页面中向和当前域名不同的页面发送请求,可以使用在当前页面所在的域的服务端做代理页面的方式解决。