JQuery:通过AJAX从服务器发送多个数据

时间:2018-03-17 07:22:40

标签: jquery express

我目前通过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?
    });
});

2 个答案:

答案 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;}
}