3

我正在尝试使用引导数据填充带有选项的选择字段。将我的模型数组绑定到 jQuery 选择对象时遇到问题...

的HTML

<select data-each-project="projects" id="project-selection">
    <option data-value="project:description"></option>
</select>

绑定

project_array = new Array()

_.each projects, (project) ->
    projects_array.push project

rivets.bind @el.select, projects:projects_array

结果

我收到一个错误,表明该对象没有 .on 方法->它没有,因为它是一个模型数组而不是它自己的模型...

这应该怎么做?谢谢!

4

1 回答 1

4

当您订阅迭代时,绑定铆钉会做两件事:

  1. 订阅整个数组,因此如果它发生变化,它将重新运行迭代
  2. 订阅需要绑定的数组的所有孩子

Rivets 没有订阅您的孩子,因为您没有使用任何需要它的绑定。

project:description = 非订阅绑定

project.description = 订阅绑定

如果您不想订阅数组更改(我认为这就是您所要求的),您可以这样做data-each-project=":projects"

于 2012-11-26T19:39:56.973 回答