[英]Is it possible to retrieve and use a handlebars template from an XHR, instead of using the script tag?
车把文档显示,通过添加“脚本”节点,可以在页面中插入模板:
<script id="myTemplate" type="text/x-handlebars-template">
<div>
<h3>cars</h3>
<fieldset>
{{#each model}}
<label class="labels">
{{answer}}
</label>
<br>
{{/each}}
</fieldset>
</div>
</script>
然后做:
var source = $(#myTemplate).html();
template = Handlebars.compile(source);
然后应用上下文以生成输出html。
但是我没有在页面中插入脚本,而是想从Web服务器的script标记中获取所有内容。 但是,当我尝试从Web服务器编译源代码时,浏览器控制台会抱怨出现意外的“ <”。
我究竟做错了什么 ?
当然可以。
在此代码中:
var source = $(#myTemplate).html();
template = Handlebars.compile(source);
只需将第一行替换为通过Ajax调用检索HTML的ajax调用,然后编译获取HTML的结果。 因此,与其从script标记获取HTML,不如从ajax调用获取HTML,就像通过ajax调用从Web服务器获取任何其他数据一样。
如果您尝试这样做并遇到错误,那么您将必须更加确切地了解正在使用的代码,正在遇到的错误以及从ajax调用返回的结果是什么知道你哪里出错了。 但是,如果您正确实施它,那么这样做是完全合理的。 您不会希望通过Ajax调用获得的HTML中的<script>
标记,而只是表示模板的原始HTML代码段。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.