我正在学习 Jquery 模板并逐步尝试不同的东西。现在我尝试使用单条目数据元素,效果很好。据我了解,如果我用数据数组替换数据,那么它将显示所有元素,而不使用 {each} 标签。但在这种情况下,它只是出错了。在 Jquery 中。说k.nodes未定义
。
这是一个小代码片段:
// my binding
$(document).ready(function () {
$.tmpl("<div class = 'Test'>${Name}<div>", movies)
.appendTo('#EmployeeContainer');
$('#Template')
.tmpl(movies)
.appendTo('#EmployeeContainer');
});
// my data
var movies = [
{ Name: "The Red Violin", ReleaseYear: "1998" },
{ Name: "Eyes Wide Shut", ReleaseYear: "1999" },
{ Name: "The Inheritance", ReleaseYear: "1976" }
];
// part of my template from where Release year is coming
<script id = "Template" type ="text/templating">
<div class = 'Test'>${ReleaseYear}<div>
</script>
最佳答案
看来您可能忘记编译模板了。
看第一个示例 at jquery.com .
具体需要调用:$.template(...);
编译模板。
您已经获得了 $.tmpl(...);
渲染模板的部分。但是,您需要在渲染之前对其进行编译。
更新:主要错误是您缺少模板中的结束 div。您有<div>
而不是</div>
这是更新的working jsfiddle 。另外,请记住这是一个插件,因此您需要 download plugin .
关于javascript - JQuery 模板不适用于数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10058295/