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版本的,问题解决。
为了自身的提高,打算将最近碰到和解决的问题写下来。
首先碰到的问题是,注册的时候,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版本的,问题解决。
相关文章推荐
- SpringBind对象到页面时,用ajax提交form表单内容,后台无法获取绑定对象问题
- Layui之Ajax提交表到总是不执行success ? ! 开发环境是 spring boot +mybatis + layui +thymeleaf
- IE8环境下AJAX提交,只能第一次提交上去,之后就访问不到后台
- ajax在spring环境下,从前端jsp页面传送页面提交值到后端controller
- 在JSP中动态生成随机验证码,登录时后台校验验证码,以及如何避免同一个验证码被重复提交爆破密码
- spring 前端使用ajax提交两个以上相同对象list到后台的处理
- 登录(ajax提交数据和后台校验)
- 在JSP中动态生成随机验证码,登录时后台校验验证码,以及如何避免同一个验证码被重复提交爆破密码
- PHP登录(ajax提交数据和后台校验)实例分享
- jquery ajax post提交成功后回调函数不执行(IE环境下)
- ajax提交后台获取是乱码解决方法
- ajax案例---以GET和POST方式异步提交数据给后台
- struts2 + ajax(由前台的form提交数据到后台,再根据form所调用返回获取的后台json格式的数据返回到前端,然后前端用jquery对json数据进行解析)==》》涉及非文件上传的部分
- Ajax表单提交及后台处理简单应用
- ajax同步应用—登录时校验验证码
- 利用AJAX是想JSP页面的单个控件的后台校验
- 验证码生成 点击刷新 ajax校验
- JS实现AJAX提交数据到后台,实现验证用户名是否存在功能详解
- jquery的ajax向后台提交时,乱码的解决方案
- javascript中创建对象,并序列化为json,通过$.ajax的提交json数据到后台方法,取值为null的问题