日期:2014-05-16 浏览次数:20759 次
今天使用了配合struts2使用了jquery.ajax来实现用户登录功能,jquery他封装了ajax使ajax的使用变得更加的容易,我在使用jquery是用的它的json数据格式来接受的数据;这里把代码贴上来供大家看看: 实现功能:用户输入用户名和密码实现无刷新登录,使用struts2和jquery.ajax, 网页代码: <form action="" name="logform" id="logform"> <div class="wline">用户名:<input type="text" name="logUsername" id="logUsername" value="" style="width:120px;"/></div> <div class="wline">密 码:<input type="text" name="userPassword" id="userPassword" value="" style="width:120px;"/></div> <div class="wline">验证码: <input type="text" id="checkCode" name="checkCode" class="required input" title="请填写验证码"/> </div> <div class="wline"> <input type="button" name="" value="登录" onclick="ajaxlogin();" style="width:50px; height:25px; "/> <input type="button" name="" value="返回" style="width:50px; height:25px; "/> <a href="#">注册</a> <a href="#">忘记密码?</a> </div> </form> 在这里我只对用户名和密码做了验证; js代码: function ajaxlogin(){ var params=$('#logform').serialize(); //这里直接就序列化了表单里面的值;很方便 $.ajax({ url :'${base}/hzwjj/licharge/login/Com_userLogin.do', //后台处理程序 type:'post', //数据发送方式 dataType:'json', //接受数据格式 data:params, //要传递的数据;就是上面序列化的值 success:login_Result //回传函数(这里是函数名) }); } function login_Result(json){ //回传函数实体,参数为XMLhttpRequest.responseText if(json.logeResult){ alert("this is 1"); }else{ alert("this is 2"); } }
?java代码: public String userLogin(){ LicensingUser user=userMng.findByName(logUsername.trim()); if(user!=null){ if(this.logUsername.equals(user.getLogUsername() ) ){ Md5PwdEncoder m = new Md5PwdEncoder();//Md5验证 String pass=m.encodePassword(userPassword); if(pass.equals(user.getPassword())){ contextPvd.setSessionAttr("licensingUser",user); user.setLogCount(user.getLogCount()+1); user.setLogTime(new Date()); userMng.update(user); jsonRoot.put("logeResult",true); return "logErro"; } } } jsonRoot.put("logeResult",false); return "logErro"; } 在action里面需要一个map: private Map<String, Object> jsonRoot = new HashMap<String, Object>(); public Map<String, Object> getJsonRoot() { return jsonRoot; } public void setJsonRoot(Map<String, Object> jsonRoot) { this.jsonRoot = jsonRoot; } 另外特别要注意:?在struts2的配置文件中一定要配置: <result name="logErro" type="json"> **.jsp </result> 这里一定要把type="json";要不然页面上回传函数那里接受不到数据?
?