1

我将 dynatree 与淘汰赛一起使用。视图模型包含我想使用复选框显示的“isManager”布尔属性。

问题是,在应用 dynatree 绑定后,我似乎失去了与 isManager 属性的绑定。

这是小提琴:http: //jsfiddle.net/markachten/UhA3m/

现在我不确定这是淘汰赛问题还是 dynatree 问题。它可能在绑定处理程序的定义中吗?引用 jsFiddle 时我必须在此处输入一些代码,我不确定粘贴整个代码是否方便......无论如何,它在绑定的定义中吗?

ko.bindingHandlers.dynatree = {
    ...        
};

还是我需要传递一些额外的绑定选项?

{
    noLink: true,
    minExpandLevel: 2
    // what should go here?
}

关于代码的一些附加评论:我被迫在 dynatree 中将 'noLink' 属性设置为 true。如果设置为 false,则无法选中复选框。我正在使用跨度中的跨度来显示名称和输入元素。

谢谢!

4

1 回答 1

0

我认为这是dynatree问题(我与jstree相同)。

这里的问题是dynatree插件能够绘制树需要向您的 html 添加新元素。换句话说,它再次重组您的 html。

您可以通过检查检查器中的结果 html 来检查这一点。你会发现你data-bind的已经不存在了!!!

因此,要解决此问题,您需要将自定义绑定dynatree放在您的<ul>

<div id="dynatree" data-bind="">
    <ul data-bind="template: { name: 'itemTmpl', foreach: persons },dynatree: {}"></ul>
</div>

工作演示

于 2013-07-11T12:37:42.970 回答