2014-09-23 63 views
0

我遇到了knockout foreach綁定產生的autocompletes問題。 請看看在的jsfiddle http://jsfiddle.net/u05afbpp/1/讓Jquery自動完成或Select2插件在敲除foreach綁定中工作

<table data-bind="foreach: cars" class="table table-striped table-bordered"> 
<tr> 
    <td> 
     <span>Test</span> 
     <input type="text" class="autocomplete"/> 
    </td> 
</tr> 
</table> 

$(function() { 
var availableTags = [ 
    "ActionScript", 
    "AppleScript", 
    "Asp", 
    "BASIC", 
    "C", 
    "C++", 
    "Clojure", 
    "COBOL", 
    "ColdFusion", 
    "Erlang", 
    "Fortran", 
    "Groovy", 
    "Haskell" 
]; 
$(".autocomplete").autocomplete({ 
    source: availableTags 
}); 
}); 

var viewModel = { 
cars:ko.observableArray(), 
myValue: ko.observable() 
}; 
viewModel.cars.push("BMW"); 
viewModel.cars.push("Benz"); 
viewModel.cars.push("Renault"); 
ko.applyBindings(viewModel); 

我能做些什麼,使工作?

謝謝你的時間。

回答

1

當頁面開始渲染時,可能不會有class .autocomplete的元素。這是你想要的嗎? http://jsfiddle.net/G_sh/u05afbpp/6/

我已經將下面的代碼移到了ready函數中,希望它能夠工作。

var viewModel = { 
cars:ko.observableArray(), 
myValue: ko.observable() 
}; 
viewModel.cars.push("BMW"); 
viewModel.cars.push("Benz"); 
viewModel.cars.push("Renault"); 
ko.applyBindings(viewModel);