如何动态创建绑定

时间:2015-04-20 16:58:46

标签: knockout.js

我想根据我的dom中的数据创建动态视图模型。我的想法是,我想在没有重新开始的情况下将Knockout引入我的页面。我有一个包含我的数据的无序列表,我想从。

创建我的viewmodel

例如:

<ul>
  <li id="1">name1 <span data-bind="text:nbClicked"></span></li>
  <li id="2">name2 <span data-bind="text:nbClicked"></span></li>
</ul>

我的问题是html是在服务器端生成的,我想用KO处理事件。有没有办法为列表中的每个元素动态构建上下文?

1 个答案:

答案 0 :(得分:0)

我对你正在尝试做的事情感到有点困惑,但你可以为各个DOM元素应用单独的视图模型。 ko.applyBindings将特定节点作为单独的参数:

ko.applyBindings({
    nbClicked: 'hello 1'
}, document.getElementById('1'));

ko.applyBindings({
    nbClicked: 'hello 2'
}, document.getElementById('2'));