【问题标题】:Why a jade template is rendered by express from an action form and not from an Ajax request?为什么翡翠模板是通过 express 从动作表单而不是从 Ajax 请求呈现的?
【发布时间】:2013-06-03 13:21:22
【问题描述】:

我一直在寻找试图理解这一点,但我的理解是复杂而不清楚的。问题是当我向 app.get 发出 get 请求时:

app.get('/youarein', function(req, res) {
  console.log('getting in request');
  res.render('youarein.jade');
});

如果我通过 ajax 调用来执行此操作,例如:

in: function(){
      console.log("in!");
      $.get('/youarein');
      return false;
    },

youarein.jade 未呈现并保留以前的 .jade 模板(索引)- 我得到了控制台日志和来自服务器的响应

但是,如果我从表单提交中执行此操作,例如:

<form action="/youarein", method="get">
  <fieldset>
    <input type="submit" value="Submit" />
  </fieldset>
</form>

youarein.jade 模板被渲染并取代前一个模板。

有没有办法从 Ajax 做起? Backbone pushState 如何处理这个问题?它与 HTML5 History Api 有什么关系吗?

任何对此有所启发的 cmet 将不胜感激。谢谢。

【问题讨论】:

    标签: jquery node.js backbone.js express pug


    【解决方案1】:

    只需使用&lt;a href="/youarein"&gt; 标记,$.get 不会做你认为它做的事情(它用于 AJAX)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-14
      • 2013-05-19
      • 1970-01-01
      • 2012-04-23
      • 2012-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多