【发布时间】:2013-05-15 02:55:07
【问题描述】:
我是这样引用 jQuery tmpl 的:
<script src="../../Scripts/jQuery.tmpl.js" type="text/javascript"></script>
此外,我这样引用 KnockoutJS:
<script src="../../Scripts/knockout-2.2.1.js" type="text/javascript"></script>
然后我有一小段这样的代码:
<div data-bind="template:'partnersTemplate'"></div>
<script id="partnersTemplate" type="text/html">
<ul>
{{ each(index,par) partners}}
<li> ${par.name} </li>
{{/each}}
</ul>
</script>
为什么浏览器不显示一个渲染的模板?它显示了括号和所有内容。
【问题讨论】:
-
你在用 durandal 吗?
-
在包含 tmpl 之前是否包含 jQuery?无论哪种方式,这对我们来说都是一个猜谜游戏。您必须自己调试(对于初学者,打开控制台检查 JS 错误)并使用更多详细信息编辑问题。
-
你的视图模型是什么样的?
-
使用此模板的通常步骤是什么?并结合敲除...然后我将能够验证事情,也许对我来说不太清楚。顺便说一句,我只是使用史蒂夫·桑德森(Steve Sanderson)展示的与个人和朋友客户端视图模型的淘汰赛时展示的示例。我只是将朋友更改为合作伙伴,其余的都是一样的
-
函数伙伴(名称){返回{名称:ko.observable(名称)}; } var viewModel = { name: ko.observable("jon doe"), address: ko.observable("street no 1"), partners: ko.observableArray([new partner("Johnny"), new partner("Amie) ")]), addPartner: function () { this.partners.push(new partner('another')); }};
标签: jquery asp.net knockout.js jquery-templates knockout-mvc