【问题标题】:Knockout with jQuery tmpl rendering unparsed templates使用 jQuery tmpl 渲染未解析的模板进行淘汰赛
【发布时间】: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


【解决方案1】:

尝试改变:

<div data-bind="template:'partnersTemplate'"></div>

到这里:

<div data-bind="template:{ name: 'partnersTemplate' }"></div>

【讨论】:

  • 我也试过了,但问题是我通常需要什么才能工作,因为他似乎根本不认识 jquery 模板的语法。
  • 有什么理由要求您使用 jQuery 模板而不是标准的淘汰模板?
  • 我跟随史蒂夫桑德森的例子,与人和朋友一起,在淘汰赛网站上,他没有提到要做什么才能使用 jquery 模板,只是最与淘汰赛结合使用。所以我只想完成该示例以使其正常工作。
猜你喜欢
  • 2016-10-08
  • 1970-01-01
  • 1970-01-01
  • 2014-08-14
  • 1970-01-01
  • 1970-01-01
  • 2016-02-27
  • 2012-02-19
  • 2012-01-03
相关资源
最近更新 更多