采用AJAX技术和JSP页面结合,实现检测用户名是否已被注册的功能

最近学JAVA WEB,到了AJAX的进度。

AJAX技术需要XMLHttpRequest对象、XML和javascript语言的综合。甚至还需要CSS/DOM的帮助。

对我来说,当然是要解决的邮箱注册系统的用户名问题。因为原先采用先提交数据给一个 页面,让这个页面来连接数据库,再返回该用户名是否已被注册的结果,来选择跳转到不同的提示页面,这样的方式,效率不够高。

现在可以采用AJAX无刷新地监测了。

我是使用<input type=”text” />文本框的onblur事件触发,当用户输入下一文本框内容的时候,检测刚才输入的用户名是否唯一。

onblur="checkUser(form1.username);"

然后添加一个<div>,默认不显示,用于在检测后显示提示信息。

<style>#toolTip{display:none;}<s/tyle>

js脚本-自定义函数创建XMLHttpRequest对象

function createRequest(url){
 if(window.XMLHttpRequest){
 request = new XMLHttpRequest();
 }else if(window.ActiveXObject){
 try{
 request= new ActiveXObject("Msxml2.XMLHTTP");
 }catch(e){
 try{
 request = new ActiveXObject("Microsoft.XMLHTTP");
 } catch(e){
 
 }
 }
 }
 request.onreadystatechange = getResult;
 request.open("get",url,true);
 request.send(null);
}

然后编写回调函数getResult()

function getResult(){
 if(request.readyState ==4 && request.status == 200){
 document.getElementById("toolTip").innerHTML = http_request.responseText;
document.getElementById("toolTip").style.display = "block";
 }
}

现在编写checkUser(username)函数,最后是checkUser.jsp的处理页。

int result=Arrays.binarySearch(userList,user);
if(result>-1){out.print("no,no,no(^_^)");
}else{
}

总之在网站的邮箱注册页面我不会去使用JSP页面,应该是用PHP,但主要是语言的问题,差别不大(因为服务器目前是PHP的环境,我本地测试的PC上安装了JAVA环境)。

最后一步是创建一维数组的方式,在这里是举个例子,通常情况下是从数据库获取信息。

《采用AJAX技术和JSP页面结合,实现检测用户名是否已被注册的功能》有73个想法

发表评论