Java/Ajax:使用Ajax实现登录功能,可以实现跳转吗?

如果账号或密码错误,直接Ajax返回个错误信息
但是如果账号和密码正确了,我想要直接request.getRequestDispatcher跳转,但是发现这样实现不了
是不是说就算账号、密码正确了,也要返回一个正确的结果给前台,然后再跳转,Ajax发送的请求不能用request.getRequestDispatcher转发请求吗?

Ajax是一个异步请求,应该不能直接跳转。
你可以返回一个true给前台,再请求新的资源。追问

前辈你好,能和我说一下什么叫同步和异步吗?我觉得也是只能先返回页面再重新请求了

追答

所谓异步,简答点说就是页面不销毁,局部发出请问做出响应。
同步就是直接把当前页面销毁,请求其他页面。
其实form表单提交或者点击链接都是同步,所以你可以通过转发来生成新的页面。
而异步不能把当前页面销毁。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-15
ajax相当于发起了一个新的请求,可以理解为打开了一个新页面,所以Dispatcher时是在ajax的新页面中跳转。

解决办法是根据ajax返回值调用页面js来跳转当前页面。本回答被网友采纳
第2个回答  2014-03-15
试过:request.getRequestDispatcher(request,response).forward(".....jsp");吗?追问

使用的request.getRequestDispatcher("/info.jsp").forward(request,response);的形式,是不是说无论正确与否都需要将结果返回给前台,然后在前台再跳转呢?不能在后台处理过Ajax的请求后直接跳转吗?

追答

可以,好像有个redirect();之类的方法可以跳转的,你可以网上搜一下!

追问

不可以的,redirect不是一个请求链,我需要把我处理过的结果放入request里面再放到业务页面处理,用redirect请求立链就断了

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网