为了账号安全,请及时绑定邮箱和手机立即绑定

<script type =“text / template”> ... </ script>的说明

<script type =“text / template”> ... </ script>的说明

largeQ 2019-08-09 11:00:26
<script type =“text / template”> ... </ script>的说明我偶然发现了一些我以前从未见过的东西。在Backbone.js的示例TODO应用程序(Backbone TODO示例)的源代码中,他们将模板放在a中<script type = "text/template"></script>,其中包含的代码看起来像是PHP之外但带有JavaScript标记的代码。谁可以给我解释一下这个?这是合法的吗?
查看完整描述

3 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

这些脚本标记是实现模板功能的常用方法(如在PHP中),但在客户端。

通过将类型设置为“text / template”,它不是浏览器可以理解的脚本,因此浏览器将忽略它。这允许您在其中放置任何内容,然后可以在以后提取并由模板库使用以生成HTML片段。

Backbone不会强迫您使用任何特定的模板库 - 那里有很多:MustacheHamlEcoGoogle Closure模板等等(您链接到的示例中使用的是下划线.js)。这些将使用自己的语法在这些脚本标记内编写。


查看完整回答
反对 回复 2019-08-09
?
波斯汪

TA贡献1811条经验 获得超4个赞

这是合法的,非常方便!

试试这个:

<script id="hello" type="text/template">
  Hello world</script><script>
  alert($('#hello').html());</script>

一些Javascript模板库使用这种技术。Handlebars.js就是一个很好的例子。


查看完整回答
反对 回复 2019-08-09
  • 3 回答
  • 0 关注
  • 725 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号