我在html页面上检查了源代码并遇到了这个
<script id="searchItemTemplate" type="text/html">
<# var rows = Math.floor((Model.RecordsPerPage - 1) / 3 + 1);
for (var i = 0; i < rows; ++i){
var startIdx = i * 3;
var endIdx = startIdx + 3;
#>
//etc ....
</script>
我以前从未见过这个。什么是脚本type="text/html"
。我不知道它是否有所作为,但这是在.aspx页面上。
这是某种占位符需要解析和eval()以后吗?
有谁知道这是什么?
使用这种方法的人可以解释这些好处吗?
答案 0 :(得分:17)
简单地忽略具有未知内容类型的脚本元素,在这种情况下,浏览器不知道如何执行text/html
脚本。
这是一些JavaScript模板引擎使用的常用技术。
另见:
答案 1 :(得分:4)
这是我在John Resig博客文章中首次看到的一个技巧。它用于举行模板以便稍后扩展的东西。浏览器不会尝试执行它。
“好处”?嗯,它比直接在你的Javascript代码中保留一个字符串要简洁得多。因为你在Javascript中没有多行字符串,所以定义这样的模板很麻烦。
编辑 - 哈哈,是的,CMS在他的回答中链接了博客文章!