ajax技术的实现流程:
1.xmlHttp = new XMLHttpRequest(); //创建XMLHttpRequest对象。
2.xmlHttp.open("GET",url,true); //注册处理事件的url
3.xmlHttp.onreadystatechange = callback; //注册回传函数
4.xmlHttp.send(null); //发送请求
5.function callback(){ //在回调方法中进行请求状态码判断。
if(xmlHttp.readyState == 4){
if(xmlHttp.status == 200){
showResult();//回传处理 //请求回应顺利,就执行回传处理。
}
}
}
6.function showResult() { //读取请求得到的信息。进行分支处理。
var message = xmlHttp.responseXML.getElementsByTagName("message")[0];
var msg = message.firstChild.data;
if(msg=="0"){
nameEnable = true;
checkUserNameMsg.innerHTML = "<font color='green'><b>用户名可以使用</b></font>";
return true;
}else if(msg=="1"){
nameEnable = false;
checkUserNameMsg.innerHTML = "<font color='red'><B> 用户名已存在,请重新输入</B></font>";
return false;
}
}//end function
以下是一个完整的例子:
jsp页面。在用户名字段失去焦点时,进行ajax验证用户名
本实例使用的是Mysql 数据库。user_info数据表。
字段:
id int自增长,主键
user_name varchar(20) null
user_pwd varchar(16) null
使用Hibernate框架反向数据表为实体Bean
reg.jsp
Servlet文件Check.java
URL解码类EscapeUnescape.java