qq_42914617 2019-08-22 22:43 采纳率: 25%
浏览 184

为什么这里没有实现跳转?

前端:

  <body>
    <form action="checkVerify" method="post">
        姓名:<input type="text" name="name" placeholder="姓名"><br/><p>
        密码:<input type="password" name="password" placeholder="密码"><br/>
            <div class="row">
        <div class="col-xs-6 pull_left">
            <div class="form-group">
                <input class="form-control" type="text" id="verify_input" placeholder="请输入验证码" maxlength="4">
            </div>
        </div>
        <div class="col-xs-6 pull_left">
            <a href="javascript:void(0);" title="点击更换验证码">
                <img id="imgVerify" src="/getVerify" alt="更换验证码" height="36" width="170" onclick="getVerify(this);">
            </a>
        </div>
        <input type="button"  onclick="aVerify()" value="提交">
    </div>

    <script type="text/javascript" src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript">
        function getVerify(obj){
            obj.src ="/getVerify?"+Math.random();
        }

        function aVerify(){
        var value =$("#verify_input").val();
        $.ajax({
            async: false,
            type: 'post',
            url: '/checkVerify',
            dataType: "text",
            data: {
                verifyInput: value
            },
        });
    }
    </script>
    </form>

后台

@RequestMapping("/login")
    public String login(String name,String password){
        User user = userService.login(name, password);
        if(user!=null){
            return "index";
        }else{
            return "redirect:/page";
        }   
    }

 @RequestMapping(value = "/checkVerify", method = RequestMethod.POST)
        public String checkVerify(@RequestParam(required=false) String verifyInput, HttpSession session, String name, String password) {

         try{
                String inputStr = verifyInput;
                String random = (String) session.getAttribute("RANDOMVALIDATECODEKEY");
                if (inputStr == null) {
                    System.out.println(inputStr);
                    return "redirect:/page";
                }
                if (inputStr.equals(random)) {
                    System.out.println(inputStr);
                    return "redirect:/login";
                } else {
                    System.out.println(inputStr);
                    return "redirect:/page";
                }
            }catch (Exception e){
                logger.error("验证码校验失败", e);
                return "redirect:/page";
            }
        }

控制台

2019-08-22 22:37:15.248  INFO 17000 --- [p-nio-80-exec-3] c.b.s.util.RandomValidateCodeUtil        : 8292
8292
Hibernate: select user0_.id as id1_0_, user0_.age as age2_0_, user0_.info as info3_0_, user0_.name as name4_0_, user0_.password as password5_0_ from user user0_ where user0_.name=? and user0_.password=?

这里的验证码输入也没问题,8292,查询语句也有了,就是不跳转,这是什么问题导致的

  • 写回答

1条回答 默认 最新

  • yybing110 2019-08-23 10:32
    关注

    你 ajax后台提交的让他怎么跳转, 其实已经跳转了 如果你在aVerify方法的ajax里有抓下输出就看跳转后的页面输出

    评论

报告相同问题?

悬赏问题

  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥30 BC260Y用MQTT向阿里云发布主题消息一直错误
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 Centos / PETGEM
  • ¥15 划分vlan后不通了
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)