昨天晚上开始看了一下ajax,觉得有必要了解一下具体情况。今天下课就过来实验室看看。发现其实上个项目中很多东西都可以用到ajax的,这样就不会导致整个页面刷新了。
Ajax是asynchronous javascript and xml的简写。不是一项具体的技术,而是几门技术的综合应用。其核心只不过是要在javascript中调用一个叫XMLHttpRequest的javascript类,这个类可以与Web服务器使用HTTP协议进行交互,程序不通过浏览器发出请求,而是用这个特殊的JavaScript对象发送请求,再由这个JavaScript对象接收响应,并将响应结果用DOM编程方式挂到原来的网页上,从而使得javascript借助这个api类可以干出比较有意义的事情。
一个简单的 例子,验证注册时候的用户名是否可用。
其中xmlhttprequest中的一个事件onreadystatechange是一个事件,又是一个函数。
Servlet如下:
web.xml如下配置:
另外,
xmlhttp的send是传递参数用的,但是只有在使用post方式提交请求的时候才有用
如下:
xmlhttp.open("post",url,true);
...
xmlhttp.send("data=data&data2=data2");
用get的话一般就是:
xmlhttp.open("get",url,true);
...
xmlhttp.send(null);