Django模板化并向模板添加元素

时间:2012-03-07 05:32:03

标签: django

我使用AJAX做了很多重新渲染模板(添加元素,删除元素)。有没有更简单的方法来做到这一点,我可以提前定义某些元素并传入一个Javascript关联数组,它会为我返回HTML?我听过Handlebars的建议,但我听说它与Django的模板系统有冲突。

这方面的一个例子是:

<div id="overlay"></div>

<div id="add-action-box" class="lightbox">
  <a class="close" href="#">X</a>
  <h2>Add Goal</h2>
  <form class="lightbox-form" id="add-action-form">
    <div class="lightbox-form-element">
      <label>Goal</label>
      <input type="text" />
    </div>

    <div class="lightbox-form-element">
      <label>Deadline</label>
      <input type="text" />
    </div>

    <div class="lightbox-form-element">
      <input type="submit" value="Add Goal" />
    </div>
  </form>
</div>

我希望能够在其他地方定义上面的HTML并允许Jquery将上面的内容附加到另一个元素。我不想输入上面的内容并删除所有换行符,添加\,在所有内容周围加上引号等等。这使得阅读更加困难。

如果HTML在同一行上编辑HTML,这是令人沮丧的:

$("body").append('<div id="add-action-box" class="lightbox"><a class="close" href="#">X</a><h2>Add Goal</h2>')

1 个答案:

答案 0 :(得分:1)

您是否考虑使用与jQuery Templates类似的内容。它们不再被维护,项目已被jQuery UI选中。可以找到更多详细信息here。我经常发现它们在像你这样的情况下很有用。