好了Twitter的引導預輸入選擇,我這個問題,現在爭取小時,縮小了問題很簡單Fiddle不受KnockoutJS約束
問題是,當我使用Twitter的引導的預輸入插件上一個文本輸入並進行選擇,該值不會在KnockoutJS ViewModel中更新。我知道我可以破解它的工作,但必須有一些我在這裏失蹤的東西。
基本上我有是:
淘汰賽綁定
// Bind twitter typeahead
ko.bindingHandlers.typeahead = {
init: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
var $element = $(element);
var allBindings = allBindingsAccessor();
var typeaheadArr = ko.utils.unwrapObservable(valueAccessor());
$element.attr("autocomplete", "off")
.typeahead({
'source': typeaheadArr,
'minLength': allBindings.minLength,
'items': allBindings.items,
'updater': allBindings.updater
});
}
};
淘汰賽視圖模型
function MyModel(){
var self = this;
self.productName = ko.observable();
self.availableProducts = ['One', 'Two', 'Three'];
}
ko.applyBindings(new MyModel());
HTML
<input type="text" data-bind="typeahead:availableProducts, value:productName"/>
其餘的東西只是來自Twitter Bootstrap。
我不是綁定的作者。原始綁定在這裏:https://github.com/billpull/knockout-bootstrap我不知道我是否錯過了用法中的某些東西? –