包含knockout.js的jquery.tmpl模板?

时间:2011-09-21 14:17:41

标签: knockout.js jquery-templates

愚蠢的问题,也许,但我无法在任何地方找到记录在案的答案。

我正在尝试保存jquery tmpl模板,并将其作为脚本包含在内。似乎这应该工作:

<script src="my_tmpl.js" type="text/javascript" id="myTemplate"></script>

但没有运气。我做错了什么?

为了完整起见,这是我为淘汰赛所做的那种约束:

<div id="myTemplatedBox" data-bind="template: 'myTemplate'">

编辑:这是my_tmpl.js内容的非常简化版本。当我将它保存在主html文档中时,它工作正常。

    <div class="headerText">{{html header_text}}</div>
    {{each(i,v) answer_array}}
        <div class="questionText"><input type="radio" name="Q${i}" value="${i+1}">{{html v}}</input></div>
    {{/each}}

2 个答案:

答案 0 :(得分:1)

查看http://encosia.com/jquery-templates-composite-rendering-and-remote-loading/

您的模板文件中仍然需要脚本标记。

<script id="invoiceTemplate" type="x-jquery-tmpl"> 
  <div class="questionBox">
      <div class="headerText">{{html header_text}}</div>
      {{each(i,v) answer_array}}
          <div class="questionText"><input type="radio" name="Q${i}" value="${i+1}">{{html v}}</input></div>
      {{/each}}
  </div>
</script>

答案 1 :(得分:0)

将类型更改为 text \ html ,然后另外转到:

<script src="my_tmpl.js" type="text/html" id="myTemplate"></script>