您的位置:首页技术文章
文章详情页

javascript - ajax后台跳转到了其他页面,还报错

【字号: 日期:2022-06-11 10:47:39浏览:21作者:猪猪

问题描述

ajax执行后跳转到后台处理,处理完却跳转到了其他页面。

ajax:

$('.get-code').click(function(){ var user_number=$('input[name=user_number]').val(); alert(user_number); $.ajax({type : 'post', url : 'user/validate', dataType : 'json', data : {'phone' : user_number}, success : function(data) { } }); });

按钮

<button class='get-code'>测试</button>

后台

@ResponseBody@RequestMapping('/validate')public Object validate(HttpSession session,String phone){ Integer result1=(int)((Math.random()*9+1)*100000); String str=Integer.toString(result1, 10); String result= str; /*Sampler.samlerInfo(phone, null);*/ System.out.println('随机数为:'+result); session.setAttribute('result', result+''); return null;}

控制有输出,说明进来了,javascript - ajax后台跳转到了其他页面,还报错

最后却跳转到了其他页面javascript - ajax后台跳转到了其他页面,还报错

控制台还报错了javascript - ajax后台跳转到了其他页面,还报错

问题解答

回答1:

简单的看了下,你后台的随机数已经打出来了,说明Controller层执行了。你既然用@ResponseBody了,为什么不直接返回你的随机数,result! 其次,根据你的回答,处理完却跳转到了其他页面。 这个问题,应该不会跳转的,因为成功请求后端数据拿到,你应该在ajax的success里,获取你要的数据,即result。事实上你的success里什么也没执行啊!个人理解^~^

回答2:

谢谢大家的答案, 由于是svn管理项目,昨天同事不小心删了同页面的一个form表单的</form>,导致出现的问题

回答3:

你为什么把生成的验证码放session里,直接把数据返回给那个ajax方法不就行了吗?ajax里success方法会接收到返回数据的。

标签: JavaScript
相关文章: