日期:2014-05-19  浏览次数:20711 次

jsp的Ajax传值,Action接收问题
jsp页面
HTML code

<script type="text/javascript">
$(document).ready(
function(){
$("#check").blur(function(){
var params=$("#check").serialize();
$.ajax({
url:"check.action",
type:"post",
dataType:"json",
data:"WUser.userName="+$("#check").val(),--[color=#FF0000]这样传值是否正确??[/color]

success:update_page
});
});
}) ;
function update_page(info){
var json=eval(info);
var str=json.info;
$("#information").html(str);
}

</script>

  </head>
  
  <body>
    <s:form action="register" name="register" method="post">
        <s:textfield  id="check" name="WUser.userName" label="账号"></s:textfield><div id="information"></div><br/>



Action代码
Java code

public class CheckAction extends ActionSupport{
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    private WUser user=new WUser();
    private String info;

    public String getInfo() {
        return info;
    }

    public void setInfo(String info) {
        this.info = info;
    }

    public WUser getUser() {
        return user;
    }

    public void setUser(WUser user) {
        this.user = user;
    }
    
    public String execute()throws Exception
    {
        System.out.println(user.getUserName());//打印接受到的userName[color=#FF0000]总是显示null??[/color]
        BeanFactory bf = WebApplicationContextUtils.getRequiredWebApplicationContext(ServletActionContext.getServletContext());
        Dao dao = (Dao)bf.getBean("Daohibernate");
        List name=dao.queryUser(user.getUserName());
        if(name==null){
            info="恭喜你可以使用";
            }else{info="用户已经存在";}
        System.out.println(info);
        return SUCCESS;

    }
}


请高手指点下,我上面的代码有什么问题,怎么Action接收不到userName??非常感谢!!

------解决方案--------------------
JScript code
data:"WUser.userName="+$("#check").val(),--[color=#FF0000]

------解决方案--------------------
探讨

JScript code
data:"WUser.userName="+$("#check").val(),--[color=#FF0000]
这样传值是否正确??
坑定不可以嘛
文档的说明:
dataObject,String发送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。查看 processData 选项说明以禁止此自动转换。必须为 Key……

------解决方案--------------------
WUser.userName改为user.userName