我使用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>')
答案 0 :(得分:1)
您是否考虑使用与jQuery Templates类似的内容。它们不再被维护,项目已被jQuery UI选中。可以找到更多详细信息here。我经常发现它们在像你这样的情况下很有用。