【发布时间】:2015-04-30 14:46:54
【问题描述】:
这是我的代码.. (snipped) (jsRender version v1.0.0-beta)
<script type="text/javascript" src="resources/javascript/jquery-1.11.2.min.js"></script>
<script type="text/javascript" src="resources/javascript/jsrender.min.js"></script>
<script>
$(document).ready(function(){
data.past = [ { text: 'HEllo' }, {text: 'bye'} , {text: 'bye'} ]
var template = $.templates("#takeover");
output = template.render(data.past);
$("table.events").append(output);
}
</script>
<body>
<script id="takeover" type="text/x-jsrender">
<tr id="{{:takeover_id}}" class="dynamic">
<td>{{:text}}{{if text}}yep{{else}}nope{{/if}}</td>
</tr>
</script>
<table class="events">
<thead>
<td>Takeover text</td>
</thead>
</table>
</body>
因此,正如预期的那样,三个.dynamic tr 被插入到table.events。
但是:而不是Hello、bye、bye;每个<td> 都简单地说yepnope。
我看不出我做错了什么。
更新:
当我尝试console.log("{{test}}test") 这会在控制台中吐出test 时,是否有脚本干扰了双花括号?
【问题讨论】:
-
发现了问题,我在节点中使用的路由器使用了一个模板系统,并且剥离了所有 {{ tags }}
-
您可能有兴趣使用 JsRender 的功能来选择您自己的标签分隔符。见stackoverflow.com/questions/29493005/…