什么是Ajax
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
AJAX 不是新的编程语言,而是一种使用现有标准的新方法。
AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。
AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。
利用Ajax从服务器读取数据的步骤
1.创建Ajax对象
2.连接到服务器
3.发送请求
4.接收返回值
创建Ajax对象
var oAjax = new XMLHttpRequest();
IE6下
var oAjax = new ActiveXObject('Microsoft.XMLHTTP');
连接服务器
oAjax.open('GET','a.txt',true);
以GET方法获取当前目录下a.text文件内容,第三个参数为true 以异步方式进行, 若为false则是同步方式。一般都是true。
发送请求
oAjax.send();
接收返回
oAjax.onreadystatechange = function () { if (oAjax.readyState===4){ if (oAjax.status===200) { alert('成功: ' + oAjax.responseText); } else { alert('失败: ' + oAjax.status); } }
因为接收返回与网速等情况有关,所以以事件的形式接收返回。readystate记录了服务器与客户端的交互进行到哪一步。它有5种返回值。
0 (未初始化)还没调用open方法
1 (载入)已调用send()方法,正在发送请求
2 (载入完成)send()方法完成,已经收到全部响应内容
3 (解析)正在解析响应内容
4 (完成)响应内容解析完成,可以在客户端调用。 完成并不代表成功。读取出错(例如404文件不存在)也是完成。
用oAjax.status返回状态码判断是否读取成功。