我正在尝试将自定义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上运作。我在这里做错了什么?
答案 0 :(得分:0)
在浏览器中使用调试控制台(按F12)以及JSFiddle中的JSHint按钮。您的VM构造函数无效。一旦你解决了这个问题,你就会注意到你正试图在一些不可观察的东西上使用subscribe
。