Backbone.js如何在table-list中选择一个组合框选项?

yvfmudvl  于 2022-11-10  发布在  其他
关注(0)|答案(1)|浏览(121)

我在列表-表格模板中添加了组合框

<script type="text/x-handlebars-template" id="listItemTmpl">
    <tr>                             
        <td>{{partNo}}</td>
        <td>
             <select name="selectCombo" id="selectCombo">
                    {{#each chks}}
                    <option value='{{this.id}}' {{#if(this.id==status)}}selected{{/if}}>{{this.name}}</option>
                    {{/each}}
                </select>
        </td>
    </tr>

</script>

所以我的chk模型是

chkModel = Backbone.Model.extend({
   urlRoot:url,
   defaults:{
        name:""
   }

});

但现在我得到了这样的错误;

Uncaught Error: Parse error on line 13:
...ue='{{this.id}}' {{#if(this.id==status)}
-----------------------^
Expecting 'ID', got 'undefined'

那我能做什么呢?

jjhzyzn0

jjhzyzn01#

所以看起来你想用一堆依赖于模型的属性来填充选择框。Handlebar.js看起来支持循环,所以尝试下面的方法。注意,我认为你的模型和集合结构不正确。据我所知,你有一个模型,它的一个属性是集合。检查 Backbone.js 文档来了解如何获取和设置属性。使用正确的方法,否则将不会触发事件。
我想尝试和职位的一些代码,但我担心我会得到它的错误,因为我不明白的上下文和你正在做的一切。
花一点时间浏览本教程,以更好地了解您应该如何做事情。
http://coenraets.org/blog/2011/12/backbone-js-wine-cellar-tutorial-part-1-getting-started/
如果您在阅读博客后需要帮助,请发表评论
下面的代码是handlebar.js示例,它可以循环遍历JSON项(在您的示例中,它们是模型属性)

{{#if items}}
 <ul>
    {{#each items}}
      <li>
        {{this.name}}
      </li>
    {{/each}}
  </ul>
{{/if}}

相关问题