【发布时间】:2017-10-28 11:54:16
【问题描述】:
我是使用 EJS 表达的新手。
我尝试使用 ajax 发布请求将值提交到数据库。
$.ajax({
type: 'POST',
url: '/register',
data: user,
success: function(data){
console.log(data);
return data;
}
});
return false;
此调用成功,之后控件转到调用函数
var sess;
app.post('/register',urlencodedParser,function(req,res){
sess=req.session;
var newUsr=Users(req.body).save(function(err,data){
if(err) throw err;
console.log(" back from ajax with data :::; " + data);
console.log("step1 cleared");
sess.registered=true;
});
console.log("step2 cleared");
location.window.href = '/index2';
});
我希望用户在注册成功后看到索引页面,但我收到以下错误。
ReferenceError: location is not defined
我认为节点中没有位置对象,因此出现此错误,但我不知道如何解决此问题,请建议
【问题讨论】:
-
window是浏览器 javascript 运行时的全局对象。在节点中,全局对象称为global,它没有位置 -
逻辑全错了。无法在服务器上创建重定向以供浏览器在 ajax 请求中访问。考虑返回响应对象,告诉客户端代码它需要重定向或使用响应数据
标签: jquery node.js ajax express ejs