【问题标题】:How to render jade template and call that in a div using jquery?如何使用 jquery 渲染玉模板并在 div 中调用它?
【发布时间】:2015-12-22 12:32:48
【问题描述】:

我正在尝试使用 jQuery .load 函数加载玉页面。 我在索引页面中有一个 div,我想在单击锚点时加载另一个玉模板。

jquery代码如下。

$(document).ready(function(){
    $('.navsub').click(function(e) {
            e.preventDefault();
            var page = $(this).attr('href');
            var pageout = $.get(page);
            if (page=='#')
                return false;
            else
            alert("working");
            $('#content_contain').load(pageout);
        });
});

现在在 app.js 中渲染页面,app.js 中的渲染代码如下所述

app.get('/somepage', function (req, res) {
    var some = res.render('somepage', { title: 'someotherpage' });
    res.send(some);
});

现在的问题是我如何渲染将在单击锚点时调用的玉模板并在 div 中调用它。

如果页面扩展名是 .html.php,上面的 jQuery 代码可以正常工作,但不能使用 .jade

有人可以解释为什么这不起作用吗? 我正在使用 node.js 和 express.js。

【问题讨论】:

    标签: javascript jquery node.js express pug


    【解决方案1】:

    res.render 不返回任何内容,而是接受回调。所以改为这样做:

    res.render('somepage', { title: 'someotherpage' }, function(err, some){
        if (err) return next(err);
        res.send(some);
    });
    

    【讨论】:

    • 它没有将页面发送到 ajax,因此 ajax 将在 #content_contain 中显示该页面
    【解决方案2】:

    在 index.js 中提及路由并重新启动应用程序为我解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-27
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 2017-12-21
      • 2014-12-08
      • 2015-10-26
      相关资源
      最近更新 更多