使用自定义knockoutjs也可以选择与标准选择绑定的绑定

时间:2015-07-14 12:12:16

标签: jquery knockout.js custom-binding

我正在尝试将自定义knockoutjs绑定与标准绑定相结合。虽然我能够找到相关的solution

ko.bindingHandlers.parentAreaComboBox = {

initialised: false,
init: function (element, valueAccessor, allBindingsAccessor, viewModel, context) {

    viewModel.parentAreas.subscribe(function (newParentAreas) {

        if (newParentAreas && newParentAreas.length > 0) {

            if (ko.bindingHandlers.parentAreaComboBox.initialised) {
                return;
            }
            ko.applyBindingsToNode(element, {
                options: viewModel.parentAreas,
                optionsCaption: 'Choose...',
                optionsText: 'Label',
                value: viewModel.selectedParentArea
            });
            $(element).chosen({});
            ko.bindingHandlers.parentAreaComboBox.initialised = true;
        }
    });
  }
};

但我无法让它在mine上运作。我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

在浏览器中使用调试控制台(按F12)以及JSFiddle中的JSHint按钮。您的VM构造函数无效。一旦你解决了这个问题,你就会注意到你正试图在一些不可观察的东西上使用subscribe