我使用Pug / Jade模板在express.js中呈现我的内容。我想在客户端创建无限滚动。当用户按下按钮时,我是否可以通过ajax调用使用Pug / Jade文件将更多内容附加到同一页面?
我知道可以在客户端返回结果并将其呈现在那里,但我问是否可以在服务器端。
这样的事情:
cliend-index.js
$('#load-more').click(function() {
$.ajax({
type: 'POST',
url: '/get_more_posts',
dataType: 'json',
data: {
last_received_id: last_received_id
},
success: function() {
// do nothing as the content rendered on the server side
},
error: function() {
// generate an error
}
});
});
断绝-app.js
app.post('/get_more_posts', function(req, res) {
db.select_post({
last_received_id: req.body.last_received_id
}, function(query_res) {
res.render('more-posts', {
_POST_LIST: helper.prepare_posts_for_rendering(query_res)
});
});
});
在render方法中使用的文件 more-posts 之上,需要将数据附加到 index.pug 这是我的索引文件。
我是否使用了一些块?是否可以呈现html并将内容返回给客户端,所以最后我会使用JQuery附加它?
答案 0 :(得分:1)
好的,这很傻。我想做的就是将数据从:018 > time = Time.now()
返回到变量并将此变量发送回ajax调用。
所以最后我使用了这样的东西:
=> 2016-08-05 17:57:26 +0300
并在ajax中处理它。
答案 1 :(得分:0)
假设您从服务器返回部分HTML,那么您所遗忘的就是将其附加到客户端。因此,如果您想将其添加到元素#more-data
:
success: function(data) {
$('#more-data').html(data);
}