【发布时间】:2011-02-08 14:50:03
【问题描述】:
我在使用 John Resig 的微模板时遇到了一些问题。
谁能帮我解释为什么它不起作用?
这是模板
<script type="text/html" id="row_tmpl">
test content {%=id%} {%=name%}
</script>
以及引擎的修改部分
str
.replace(/[\r\t\n]/g, " ")
.split("{%").join("\t")
.replace(/((^|%>)[^\t]*)'/g, "$1\r")
.replace(/\t=(.*?)%>/g, "',$1,'")
.split("\t").join("');")
.split("%}").join("p.push('")
.split("\r").join("\\'")
+ "');}return p.join('');");
和javascript
var dataObject = { "id": "27", "name": "some more content" };
var html = tmpl("row_tmpl", dataObject);
结果,如您所见, =id 和 =name 似乎在错误的位置?除了将模板语法块从 更改为 {% %} 我没有更改任何内容。
这是来自 Firefox。
Error: syntax error
Line: 30, Column: 89
Source Code:
var p=[],print=function(){p.push.apply(p,arguments);};with(obj){p.push(' test content ');=idp.push(' ');=namep.push(' ');}return p.join('');
【问题讨论】:
-
当我提到“引擎的修改部分”时,我真的很困惑。
标签: javascript jquery ajax dom template-engine