您的位置:首页 > 编程语言 > Java开发

Spring3环境下,ajax提交后台校验验证码

2014-11-04 10:01 253 查看
最近在学习Spring3,从开始学到现在碰到了各种各样的问题。

为了自身的提高,打算将最近碰到和解决的问题写下来。

首先碰到的问题是,注册的时候,ajax校验验证码的时候,一直不能取到后台的数据。

前台的代码是这样写的。

 $("#verifyCode").textbox({
  onChange: function(){
 jQuery.ajax({
 url:'regedit/validateCode',
 type:'POST',
 data:{verifyCode:$("#verifyCode").val()},
 success:function(msg){
 alert(msg);
 if(msg == 9){
 $("#message2").html("验证码错误");
 }
 }
 });
 }
 });
 });

后台代码如下:

@RequestMapping(value = "/validateCode", method = RequestMethod.POST) 
public  int validateCode(HttpServletRequest req,String verifyCode) throws Exception {
// 验证码
String validateCode = null;
HttpSession session = req.getSession();

validateCode = String.valueOf(session.getAttribute("validateCode"));
if(!validateCode.equals(verifyCode)) {
// 验证失败
return 9;
}
// 验证成功
return 0;
}

alert(msg)一直报空。

通过百度调查发现,后台返回json对象,必须加上@ResponseBody 。

果断修改后台代码如下:

public  @ResponseBody int validateCode(HttpServletRequest req,String verifyCode) throws Exception {

还是报同样的错,而且控制台也一直报错。

还是通过百度,发现jackson的jar不是最新的,我的是1.3版本,在spring3里面不适用。

下来1.9.7版本的,问题解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring ajax json
相关文章推荐