我目前通过HTML
从服务器获取AJAX
数据格式。 JQuery代码如下所示,从服务器result
获取的数据是一堆HTML
。
JQuery的
$.ajax({
url: "/home",
type: "POST",
contentType: "application/json",
data: JSON.stringify(//some data sent...)
}).done(function(result){
//"result" is HTML data
document.getElementById("post").innerHTML = result;
//I would like to get another data from the server here.
});
除了HTML
之外,我还希望收到另一个数据,这只是一个数字。如何使用HTML
一次同时获取AJAX
和数字数据?这是ExpressJS代码:
的NodeJS /快速
router.post("/home", function(req, res) {
User.findById(id).exec(function(err, user){
res.render("home", {user: user});
//Do I need to add something here (like res.render), or modify the above res.render?
});
});
答案 0 :(得分:1)
您也可以将号码放在res.render
内。
res.render("home", { user: user, number: number }
然后,如果您在客户端脚本中需要该号码,请在您的ejs中添加该效果。
<script>
const myNumber = parseInt(<%= number %>)
</script>
更多关于在此处执行此操作:How to get a data on the client side with javascript from the render express method?
基本上,当创建EJS模板时,它只是将值标记到文件中而不知道值的含义。然后它在浏览器中变成HTML,JS就会运行。
答案 1 :(得分:0)
让函数返回一个对象,这样你就可以返回你重视的html和数字
[Data Contract]
public class returnData {
[Data Member]
public string HTML {get; set;}
[Data Member]
public string number {get; set;}
}