CNode

求教,关于res.redirect没有跳转的问题

问答
SStudentWan发布于10 年前最后回复10 年前6 回复6860 浏览0 收藏

表单的提交是下面的代码:

    $('#submit').on('click', function (evt) {
        var jsondata;
        var username = $("#username").val();
        var password = $("#password").val();
        var type = isRegister ? 'register' : login;
        if (type === 'register') {
            var passconfirm = $("#password-repeat").val();
            $.ajax({
                url: "/sign/signup",
                type: "post",
                data: {
                username: username,
                password: password,
                passconfirm: passconfirm
            }
            });
        }
    });

下面是跳转的逻辑代码:

    UserModel.create(user)
        .then(function(result) {
            user = {
                id: result,
                username: username
            };
            req.session.user = user;
            console.log(req.session.user);
            req.flash('success', '注册成功');
            res.redirect('/sign');
        }).catch(function(e) {
            if(e.message.match('ER_DUP_ENTRY')) {
                req.flash('error', '用户名已被占用');
                res.redirect('/sign');
            }
        });

屏幕快照 2016-12-28 下午1.48.57.png

可以看到拿到了值,但是我的页面跳转不过去,依然在第一个sign那里QAQ 屏幕快照 2016-12-28 下午1.49.50.png

查看回复

回复 (6)

D
doerU#1·10 年前

这种 客户端 ajax post 做数据提交,服务器 接收数据然后返回给 客户端做处理..合情合理..... 哪有只管 提交数据就不管了的

X
xcatliu#2·10 年前
{{#if success}}

看你打出的 log,success 貌似是空字符串,这样的话 if 判断就是 false 了。

S
StudentWan#3·10 年前
引用 xcatliu看你打出的 log,success 貌似是空字符串,这样的话 if 判断就是 false 了。

@xcatliu error是有的,然后我好像发现了问题所在QAQ我再发一下

S
StudentWan#4·10 年前

求助啊T^T

Z
zbinlin#5·10 年前
引用 StudentWan求助啊T^T

@StudentWan 你既然是用 ajax post 过去的,不是应该由客户端控制跳转的吗?

参与回复
登录后即可参与回复。登录