AJAX(Asynchronous JavaScript and XML)
http://www.runoob.com/ajax/ajax-tutorial.html
AJAX = Asynchronous JavaScript and XML(异步的JavaScript和XML)。一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
AJAX不是新的编程语言,而是一种使用现有标准的新方法。
AJAX最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容
AJAX不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。
AJAX应用
运用XHTML+CSS来表达资讯;
运用JavaScript操作DOM(Document Object Model)来执行动态效果;
运用XML和XSLT操作资料;
运用XMLHttpRequest或新的Fetch API与网页服务器进行异步资料交换;
注意:AJAX与Flash、Silverlight和Java Applet等RIA技术是有区分的
Google Suggest
在2005年,Google通过其Google Suggest使AJAX变得流行起来。
Google Suggest使用AJAX创造出动态性极强的web界面:当您在谷歌的搜索框输入关键字时,JavaScript会把这些字符发送到服务器,然后服务器会返回一个搜索建议的列表。
创建XMLHttpRequest对象
所有现代浏览器均支持XMLHttpRequest对象(IE5和IE6使用ActiveXObject)。
XMLHttpRequest 用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新
向服务器发送请求
AJAX-服务器响应
AJAX - onreadystatechange 事件
onreadystatechange 事件
当请求被发送到服务器时,我们需要执行一些基于响应的任务。
每当 readyState 改变时,就会触发 onreadystatechange 事件。
readyState 属性存有 XMLHttpRequest 的状态信息
使用回调函数
回调函数是一种以参数形式传递给另一个函数的函数
如果您的网站上存在多个AJAX任务,那么您应该为创建 XMLHttpRequest 对象编写一个标准的函数,并为每个AJAX任务调用该函数。
该函数调用应该包含URL以及发生onreadystatechange事件时执行的任务(每次调用可能不尽相同)
AJAX面试题:
http://blog.csdn.net/chuyuqing/article/details/8801659
http://blog.csdn.net/lsh6688/article/details/7279971
http://blog.csdn.net/zhongguozhichuang/article/details/53258426