Express Js + Node JS +将.html加载到div并更改URI

时间:2014-10-31 03:08:08

标签: jquery node.js express url-routing ejs

我最近开始使用Express.js和Node.js以及渲染引擎.ejs

我想加载.ejs文件,它基本上是.html的一种形式到我页面上的div。到目前为止,我对如何使用jQuery的'load()函数非常熟悉,但使用此方法后的URI保持不变。如下例所示:

$('.about').bind('click', function(event){
    event.preventDefault();
    $('.container').load('about.ejs');
})

我单击“关于”按钮,然后将其加载到div中。但URI仍然是相同的www.page.com /

我在Node.JS和Express.JS中使用它的方式如下:

app.get('/about', function (req, res){
    res.render('about',{
        title: appName,
        menu:  "about" 
    });
});

有没有办法可以使用Express js重新创建这种行为,以便将URI更改为mypage.com/about?

1 个答案:

答案 0 :(得分:0)

试试这个。

$('.about').bind('click', function(event){
    event.preventDefault();
    $('.container').load('about.ejs');
    history.pushState({}, 'About', '/about');
});

但要小心。 Not all browsers support push state.有一些库,如pjax,可以为您处理此问题。