2
我试图做一个简单的KO自定义绑定包装器“选项”结合类似于在this example描述。我的目标是有一个自定义绑定,将select2.js
应用于指定的选择框。淘汰赛自定义绑定封装容器“方案”结合
我想获得通过只是在一个自定义包装包裹options binding开始,但由于某种原因它不工作。
这里是我有什么(jsFiddle):
ko.bindingHandlers.select2 = {
init: function (element) {
ko.bindingHandlers.options.init(element);
},
update: function (element, valueAccessor, allBindingsAccessor) {
ko.bindingHandlers.options.update(element, valueAccessor, allBindingsAccessor);
}
};
任何帮助,在此将不胜感激。
非常感谢。 – 2013-05-06 15:30:49
我只是想知道如何找出绑定是否有init/update函数以及参数是什么。当我看着在GitHub上的选项结合(https://github.com/SteveSanderson/knockout/blob/master/src/binding/defaultBindings/options.js)它似乎有检查,以确保该元素的初始化函数是一个选择输入,然后删除了那里的任何选项。 – 2013-05-06 15:43:31
@BinyominTrager - 在这种情况下有点令人困惑。我们更新了未发布的代码中的'option'绑定(将在2.3版本中)。这是非常罕见的事情(在核心绑定中添加/删除init/update方法)。如果您想要支持旧版本/新版本的KO,您必须在调用它之前检查它是否存在。我会更新答案来演示。 – 2013-05-06 15:50:00