1. 程式人生 > >ajax+springmvc跳轉至另外的頁面展示資料

ajax+springmvc跳轉至另外的頁面展示資料

    <script type="text/javascript">
        function validateLogin(){
            var sUserName =  $("#username").val();
            var sPassword =  $("#password").val();
            if (sUserName =="" ){
                alert("請輸入使用者名稱!");
                return false ;
            }
            if (sPassword ==""){
                alert("請輸入密碼!");
                return false ;
            }
                $.ajax({
                    type: "post",
                    url: "http://localhost:8080/prac/user/validate.do",
                    data: {
                        username: sUserName,
                        password: sPassword
                    },
                    dataType: 'json',
                    success: function (data) {
                        if (data.status) {
                            window.location.href = "http://localhost:8080/prac/user/success.do";
                        } else {
                            alert(data.msg);
                        }
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                        alert(XMLHttpRequest);
                        alert(textStatus);
                        alert(errorThrown);
                    }
                })
        }

ajax完成後會跳轉到success.do這個方法中

驗證登入的方法,返回一個自定義的ResultBean。把查到的user放入到session作用域中去。

    @RequestMapping(value="/validate.do", method= RequestMethod.POST)
    @ResponseBody
    public ResultBean validateLogin(String username, String password, ModelMap model,
                                    HttpServletResponse response, HttpSession session) {
        ResultBean resultBean = new ResultBean();
        try {
            User user = userService.login(username);
            if (null != user) {
                if (EncoderByMd5(password).equals(user.getPassword()) || password.equals(user.getPassword())) {
                    resultBean.setStatus(true);
                    resultBean.setMsg("登入成功");
                    resultBean.setData(user);
                    session.setAttribute("user", user);
                } else {
                    resultBean.setMsg("賬號或密碼錯誤");
                }
            } else {
                resultBean.setMsg("使用者不存在,請聯絡管理員");
            }
        } catch (Exception e){
            e.printStackTrace();
            resultBean.setMsg("登入失敗");
        }
        return resultBean;
    }

最後跳轉到success.do這個方法裡面。

 @RequestMapping("/success.do")
    public String success(HttpSession session, ModelMap model){
        return "success";
    }

執行之後會跳轉到success.jsp這個頁面。

在success.jsp頁面通過EL表示式${user.username}和${user.password}能得到使用者的使用者名稱和密碼。