我想将部分视图(用Jade编写)的内容加载到Bootstrap模式对话框中。为此,我使用AJAX调用。我只能返回生成的HTML并将其加载到模态中,但是我需要与渲染视图相处的其他数据。 我希望能够返回这样的对象(解析为JSON):
response = {
some_data: 'blablabla',
some_more_data: [5, 8, 10, 67],
my_html: '<div>HTML rendered from the Jade template</div>'
};
有办法做到这一点吗?现在我可以像这样返回呈现的HTML:
res.render('employees', {layout: false});
但是如何将它存储在变量中以返回更多数据,而无需进行更多的AJAX调用?
答案 0 :(得分:23)
在express中,您可以使用带有回调的app.render来呈现视图并获取html:
app.render('employees', {layout: false}, function(err, html){
var response = {
some_data: 'blablabla',
some_more_data: [5, 8, 10, 67],
my_html: html
};
res.send(response);
});