怎么在struts2中加入ajax验证

红酒&电影 2010-08-14 02:49:07
不知道怎么就是不能成功验证


login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>登录</title>
<script type="text/javascript">
var xmlHttp;
function createXMLHttpRequest(){
if(window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}
}

function check(){
var userName = document.getElementById('userName').value;
var password = document.getElementById('password').value;

if(userName==""){
alert('用户名不能为空!');
}else if(password==""){
alert('密码不能为空!');
}else{
createXMLHttpRequest();
xmlHttp.onreadystatechange = processor;
xmlHttp.open("post", "loginAction.action");
xmlHttp.send(null);
}
}

function processor(){
var backNews;
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
backNews = xmlHttp.responseText;
alert(backNews.indexOf("false"));
if(backNews.indexOf("false")!=-1){
alert('用户名不存在!');
}else if(backNews.indexOf("true")!=-1){
alert('密码不正确!');
}
}
}
}
</script>
</head>

<body style="text-align: center">
<form action="loginAction.action" method="post" name="loginForm">
<table>
<tr>
<th align="right">用户名:</th>
<td><input name="users.userName" id="userName" type="text"/></td>
</tr>
<tr>
<th align="right">密码:</th>
<td><input name="users.password" id="password" type="text"/></td>
</tr>
<tr>
<td colspan="3" align="center">
<input type="button" value="登录" onclick="check()" >
</td>
</tr>
</table>
</form>
</body>
</html>




loginAction.java

public class LoginAction extends ActionSupport {
private IBean ibean;
private String backNews;
private Users users;

public String execute(){
backNews = ibean.loginBean(users);
return "success";
}

public IBean getIbean() {
return ibean;
}

public void setIbean(IBean ibean) {
this.ibean = ibean;
}

public String getBackNews() {
return backNews;
}

public void setBackNews(String backNews) {
this.backNews = backNews;
}

public Users getUsers() {
return users;
}

public void setUsers(Users users) {
this.users = users;
}
}



daos.java

public String loginDao(Users users) {
List list = getHibernateTemplate().find("from Users u where u.userName=?", users.getUserName());
String password = null;
String backNews = null;
boolean b = false;
if(list.size()>0){
for(int i=0;i<list.size();i++){
password = ((Users)list.get(i)).getPassword();
if(password.equals(users.getPassword())){
b = true;
break;
}
}
if(!b){
backNews = "true";
}
}else{
backNews = "false";
}
return backNews;
}
...全文
67 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
superman1986 2010-08-14
  • 打赏
  • 举报
回复
post 方式提交要特殊设置,
你可以先尝试下get方式。
jayqean 2010-08-14
  • 打赏
  • 举报
回复
LoginAction 里的execute()方法 返回一个null
里面 加上一句 设法输出 out.println(backNews);
界面上就能拿到了
红酒&电影 2010-08-14
  • 打赏
  • 举报
回复
我这个问题没人能解答吗
like117 2010-08-14
  • 打赏
  • 举报
回复
强人啊!!我拿去用用
红酒&电影 2010-08-14
  • 打赏
  • 举报
回复
大家帮帮忙啊

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧