Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Nodejs、Express、站点导航_Node.js_Express_Pug - Fatal编程技术网

Node.js Nodejs、Express、站点导航

Node.js Nodejs、Express、站点导航,node.js,express,pug,Node.js,Express,Pug,我正在使用Nodejs、Express和Jade编写一个简单的web应用程序。我已经适当地设置了我的路线。我在视图之间导航时遇到问题。我可以通过在浏览器中输入适当的url来更改视图。如何让我的应用程序在单击按钮时更改视图?我意识到这可能源于对我使用的技术的根本误解 目前,我正在尝试通过jQueryAjax访问我的控制器 $('#submit').click(function(){ $.ajax({ url: "/go", data: "site=" + $('#websi

我正在使用Nodejs、Express和Jade编写一个简单的web应用程序。我已经适当地设置了我的路线。我在视图之间导航时遇到问题。我可以通过在浏览器中输入适当的url来更改视图。如何让我的应用程序在单击按钮时更改视图?我意识到这可能源于对我使用的技术的根本误解

目前,我正在尝试通过jQueryAjax访问我的控制器

$('#submit').click(function(){
  $.ajax({
     url: "/go",
     data: "site=" + $('#website').val() + "&img=" + $('#image').val()
  });
}))

这将成功命中我的控制器:

app.get('/go', function(req, res){
    res.render('view', {title: 'create', site: req.query['site'] });

这将返回正确的html,但不会呈现为新视图。

这将严重取决于客户端代码的设置方式(例如,您是否使用类似主干网的框架?)。最简单的方法是为导航按钮设置单击处理程序,只需将
window.location.href
更改为与相应视图关联的URL即可。当然,这将导致在每次视图更改时重新加载完整的页面,这可能是可取的,也可能是不可取的,但是如果不了解更多关于应用程序结构的信息,没有人可以说更多

或者,您可以使用好的旧链接进行导航,并使用CSS使它们看起来像按钮


请注意,这些注意事项与您正在使用的服务器端技术无关。

您应该编写一些代码以使其更清晰。我添加了一些代码以澄清问题