1. Ajax: AsynchronousJavaScript and XMl,异步的javaScript和XML。它是一种用javaScript技术和XML技术结合来实现的一种新的技术。用javaScript进行一部请求,用XML进行数据传输,但一种新数据格式JSON比XML更灵活。
2. Ajax技术主要用的就是XMLHttpRequest对象,创建这个对象的方法:
function create(){
if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();
}elseif(window.ActiveXObject){
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP")
}
}
3. 写回调函数:
function callback() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var str = xmlHttp.responseText;//这个用于获取返回的字符串
var xml = xmlHttp.responseXml;//这个用于获取返回的XML
} else {
alert("AJAX服务器返回错误!");
}
}
4. }用XMLHttpRequest对象进行异步请求:
function run(url){
create();
xmlHttp.open("POST",url,true);
xmlHttp.onreadystatechange=callback;
xmlHttp.send();
}
5. 注意:
(1)用xmlHttp.responseXml获取xml时,response的响应类型必须为XMl,否则返回null,返回类型应该在servlet中的定义response的返回类型。
(2)用xmlHttp.responseText获取字符串时,入伏哦是一般字符串可以直接使用,如果是JSON字符串需要先用eval()方法转化为JSON对象在使用(详见JSON学习笔记)。
6. 服务器端代码如下:
response.getWriter().write(“aaaaaaaa”);
后台就用writer()项前台返回字符串或XMl,是writer()不是print(),返回的是Xml时,可能要设置一下response的响应类型。