2016-11-21 100 views
0

我已经尝试了几乎所有在这里提供的解决方案,但由于我是nodejs的新手,我在代码中缺少一些部分。请帮我找到它。 单击登录按钮时,我想将我的页面重定向到另一个简单页面。重定向到另一页:NodeJs

这里是我的login_authentication.js

window.onload = function() { 


    var username = document.getElementById("username"); 
    var password = document.getElementById("password"); 
    var loginButton = document.getElementById("login"); 


    loginButton.onclick = function (req,res) { 
     if (username.value == "" || password.value == ""){ 
      alert("Please fill out details!"); 
     }else { 
      //alert(username.value); 
      username.value = ""; 
      password.value = ""; 

     router.get('/users', function(req, res, next) { 
      // res.send('respond with a resource'); 
      res.render('homepage', { title: 'Thank You' }); 
     }); 
     } 

    } 

} 

下面是app.js

app.use('/', index); 
app.use('/users', users); // need to show this page rest is default code 

这里是users.js

var express = require('express'); 
var router = express.Router(); 

/* GET users listing. */ 
router.get('/', function(req, res, next) { 
// res.send('respond with a resource'); 
    res.render('homepage', { title: 'Sample' }); 
}); 

module.exports = router; 

我想在用户单击代码位于login_authentication的登录按钮时重定向我的页面。谢谢你的帮助。

+1

使用了window.location = “/用户” 而不是router.get( '/用户')在login_authentication.js – farhadamjady

+0

@farhadamjady谢谢SOOO了。它正在做我想达到的目标。再次感谢。 –

+0

欢迎您! ;) – farhadamjady

回答

2

使用window.location="/users"代替router.get('/users')login_authentication.js

0

假设你有某种形式,它有一些输入字段。

<form method="post" action="/thank-you" id="login"> 
<!-- Some input fields --> 
<button type="button">Submit</button> 
</form> 

在您的前端js中,您将处理单击事件。如果验证通过,那么你将提交表单在这条路线的NodeJS

var username = document.getElementById("username"); 
var password = document.getElementById("password"); 
var loginButton = document.getElementById("login"); 


loginButton.onclick = function (req,res) { 
    if (username.value == "" || password.value == ""){ 
     alert("Please fill out details!"); 
    }else { 
     document.getElementById("login").submit(); 
    } 

} 
在节点

在这里,您将收到的请求,请确保它具有thank-you.html文件。

//NODE 
router.post('/thank-you', function(req, res) { 
    res.sendFile('thank-you.html'); 
}); 
+0

尝试过。但没有工作。我写这段代码我login_authentication.js在if条件。 –

+0

我没有看到你正在提交你的表格 –

+0

你能告诉我我应该在哪里做的吗?在login_authentication.js中查看我的编辑 –