jsp代码:
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="js/jquery-1.7.2.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#username").blur(function(){
var username=$("#username").val();
alert(username);
          $.ajax({
           url:'rv',
           type:'post',
           data:"username="+username,
           dataType:'json',
           success:function(data){
           
           alert(data);
           }
          });
          

});
});
</script>
<script type="text/javascript">
function  vpassword1()
{
var password1=document.getElementById("password1").value;
var reg = new RegExp(/^[a-zA-Z0-9]{6,}/);
if(reg.test(password1))
{
document.getElementById("spassword1").innerHTML="正确";
}
else
{
document.getElementById("spassword1").innerHTML="格式不对";
}
}function  vpassword2()
{
var password2=document.getElementById("password2").value;
var password1=document.getElementById("password1").value;
if(password2==password1)
{
document.getElementById("spassword2").innerHTML="正确";
}
else
{
document.getElementById("spassword2").innerHTML="两次输入的密码不一致";
}
}
function  vmail()
{
var mail=document.getElementById("mail").value;
var reg = new RegExp(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]+$/);
if(reg.test(mail))
{
document.getElementById("smail").innerHTML="正确";
}
else
{
document.getElementById("smail").innerHTML="格式不对";
}
}
</script>
</head>
<body style="background-image:url('./images/bg.jpg');background-repeat: no-repeat;">
<form action="register" method="post">
  <table width="51%" border="1" align="center" style="margin-top:120px;">
    <tr>
      <td colspan="3"><strong>用户注册:</strong></td>
    </tr>
    <tr>
      <td width="17%" height="24">用户名:</td>
      <td width="30%"><label>
        <input type="text" name="username" id="username">
      </label></td>
      <td><span id="rusername">请输入用户名,以字母开头</span></td>
    </tr>
    <tr>
      <td>密码:</td>
      <td>
        <input type="password" name="password1" id="password1" onblur="vpassword1()">     </td>
      <td><span id="spassword1">请输入不少于6位的数字或字母密码</span></td>
    </tr>
    <tr>
      <td>确认密码:</td>
      <td><label>
        <input type="password" name="password2" id="password2" onblur="vpassword2()">
      </label></td>
      <td><span id="spassword2">确认密码</span></td>
    </tr>
    <tr>
      <td>邮箱</td>
      <td><input type="text" name="mail" id="mail" onblur="vmail()"></td>
      <td><span id="smail">请输入正确的邮箱</span></td>
    </tr>
    <tr>
      <td colspan="2" align="center">
        <input type="submit" name="button" id="button" value="注册"></td>
      <td align="center"><input type="reset" name="button2" id="button2" value="重置"></td>
    </tr>
  </table>
</form>
  <p>&nbsp;</p></body>
</html>action代码:
import com.niit.service.UserManger;
import com.opensymphony.xwork2.ActionSupport;public class RegisterValidate extends ActionSupport
{
private String username;
private UserManger usermanager;
private String  msg; public String getMsg()
{
return msg;
} public void setMsg(String msg)
{
this.msg = msg;
} public UserManger getUsermanager()
{
return usermanager;
} public void setUsermanager(UserManger usermanager)
{
this.usermanager = usermanager;
} public String getUsername()
{
return username;
} public void setUsername(String username)
{
this.username = username;
} @Override
public String execute() throws Exception
{
System.out.println("进入rv:" + username);
if (usermanager.vUser(username))
{
msg="username exist!";
System.out.println(msg);
return SUCCESS;
}

else
{
if ("".equals(username))
{
msg="username null!";
System.out.println(msg);
}
else
{
msg="username ok";
System.out.println(msg);
}
return SUCCESS;
}
}
}相应的xml配置:
</package>
<package name="ajax" extends="json-default">
<action name="rv" class="com.niit.action.RegisterValidate">
<result type="json"></result>
<param name="root">msg</param>
</action>
</package>其中usermanager.vUser(username)没有问题,因为可以输出"username ok",但就是不执行  alert(data);

解决方案 »

  1.   

    你反回的是 return SUCCESS;  这个配置却是这样  
    <package name="ajax" extends="json-default">
    <action name="rv" class="com.niit.action.RegisterValidate">
    <result type="json"></result>
    <param name="root">msg</param>
    </action>
    </package>你不觉得奇怪么
      

  2.   

    我感觉没什么问题呀   不配置默认就是SUCCESS啊  如果不对 该怎么改呢?
      

  3.   

    <param name="root">msg</param>
    这个应该是取msg的值吧如果是的话改成
    <param name="root">${msg}</param>
      

  4.   

    <result name="success" type="json"></result>