这个应用主要用在
springside
框架中的
ajax
用户注册验证
,
我这个菜鸟做的大家试试参考
!!
1
页面
jsp
的
script
代码
:
<
script
type
=
"text/javascript"
>
var
xmlHttp;
function
createXMLHttpRequest()
{
if
(window.ActiveXObject)
{
xmlHttp =
new
ActiveXObject(
"Microsoft.XMLHTTP"
);
}
else if
(window.XMLHttpRequest)
{
xmlHttp =
new
XMLHttpRequest();
}
}
function
createQueryString()
{
var
userid = document.getElementById(
"userid"
).value;
var
queryString =
"userid="
+ userid;
return
queryString ;
}
function
doRequestUsingGET()
{
if
(document.getElementById(
"userid"
).value==
""
)
{
alert(
"
用户名不能为空
"
);
}else{
createXMLHttpRequest();
var
queryString =
"
<%=
request.getContextPath()
%>
/pages/um/operInfo.do?method=checkuser&"
;
queryString = queryString + createQueryString()
+
"&timeStamp="
+
new
Date().getTime();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open(
"GET"
, queryString,
true
);
xmlHttp.send(
null
);
}
}
function
handleStateChange()
{
if
(xmlHttp.readyState == 4)
{
if
(xmlHttp.status == 200)
{
parseResults();
}
}
}
function
parseResults()
{
var
responseDiv = document.getElementById(
"serverResponse"
);
if
(responseDiv.hasChildNodes())
{
responseDiv.removeChild(responseDiv.childNodes[0]);
}
var
responseText = document.createTextNode(xmlHttp.responseText);
responseDiv.appendChild(responseText);
}
</
script
>
2
还要在页面添加一个按钮和一个
div
层
<html:text property="userid" styleClass="text" />
<
td
width
=
"8%"
>
<
input
type
=
"button"
value
=
"
检查用户
"
class
=
"MyButton"
onclick
=
"doRequestUsingGET();"
/>
</
td
>
<
td
width
=
"10%"
style
=
"color: #FF0000"
align
=
"left"
><
div
id
=
"serverResponse"
></
div
> //
当服务端返回值就在这里显示是否存在用户名
</
td
>
3
在
ACTION
中写一个方法命名为
checkuser,
记得不要写
actionforwad
的方法
!
/*
*
验证用户是否存在
*/
public
void
checkuser(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
String userid=request.getParameter(
"userid"
);
response.setContentType(
"text/xml;charset=UTF-8"
);
String responseText=
null
;
try
{
PrintWriter out= response.getWriter();
int
Result=
sysUserManager
.findUserBy(userid.trim());
switch
(Result)
{
case
0:
responseText =
"
该用户名已经存在
!"
;
break
;
case
1:
responseText =
"
用户名可以注册
!"
;
break
;
}
out.println(responseText);
out.close();
}
catch
(IOException e) {
//
TODO
Auto-generated catch block
e.printStackTrace();
}
4
在业务层
MANAGER
类中
findUserBy ()
方法
public
int
findUserBy(String userid){
SysUser user =
null
;
try
{
user =
this
.get(SysUser.
class
,userid);
}
catch
(Exception e){
user =
null
;
}
if
(user==
null
)
return
1;
else
return
0;
}