日期:2014-05-16  浏览次数:20332 次

本人js新手,纯新手,想用jQuery中封装的ajax来实现不跳转验证用户名是否已经存在,用的SSH的框架
我的想法是将用户名传到action,action通过spring和hibernate到数据库验证是否存在,然后返回结果,存在返回exist,不存在返回not exist。
然后回调函数根据返回的内容确定显示什么提示。

这个事件是在账号框失去焦点的时候触发的,想要的效果是在其后面提示。

但是现在action接受不到用户名,或者是返回值没有传回给回调函数,页面上根本就没有变化。
不知道为什么,求各位大牛帮助!!


   <script src="js/validate.js" type="javascript"> </script> 
    <script src="js/jquery-1.9.1.js" type="javascript"> </script> 

<script language="JavaScript">
    $(document).ready(function() {
        $('#accountname').blur(function(){
            var account = $('#accountname').val();
            $.get('src/struts/action/CheckAccountName.action?','userid = '+ account,processData);
        });
    });

function processData(){
    if(data=='exist'){
        $('#accounthint').html('<p>该账号已经存在</p>');
    }
    else $(this).html('<p>该账号可以使用</p>');
}





action部分的代码:

public class CheckAccountNameAction extends ActionSupport{
    private String userid;
    private String result;
    private AccountManagerImpl am = new AccountManagerImpl();

    public CheckAccountNameAction(String userid) {
        this.userid = userid;
    }
    
    @Override
    public String execute(){
        result = am.checkAccountName(this.userid);
        //这个函数就是service层的函数
        return result;
}



我总觉得是什么部分环节掉了。。
急求帮助啊!
jQuery Ajax JavaScript SSH 用户名