入力を入力しているときにオートコンプリートを設定しようとしていますが、動作していないようです。コンソールにエラーは表示されませんが、オートコンプリートは機能しません。ノックアウトjsを使用したマップのオートコンプリート
ここでは、コードです:
var mapApplication = function(){
var mapsModel = {
fromAddress: ko.observable(),
toAddress: ko.observable()
};
// method to add custom binding handler to the KO
var configureBindingHandlers = function(){
// custom binding for address auto complete
ko.bindingHandlers.addressAutoComplete = {
init: function(element, valueAccessor){
//create autocomplete object
var autocomplete = new google.maps.places.Autocomplete(element, {types:['geocode']});
// when user selects an address from the drop down, populate the address in the model.
var value = valueAccessor();
google.maps.event.addListener(autocomplete, 'place_changed', function(){
var place = autocomplete.getPlace();
console.log(place);
value(place);
});
}
};
};
var init = function(){
// add code to initialise the module
ko.applyBindings(mapApplication);
};
// execute the init function when the DOM is ready
$(init);
return {
// add member that will be exposed publicly
mapsModel: mapsModel
};
}();
とHTML:
<div class="panel-heading">Address</div>
<div class="panel-body">
<div id="addressFromFields" class="form-group">
<label for="autocompleteFromAddress"> From Address</label>
<input id="autocompleteFromAddress" class="form-control" data-bind="addressAutoComplete: mapApplication.mapsModel.fromAddress" placeholder="where are u from" type="text">
</div>
<div id="addressToFields" class="form-group">
<label for="autocompleteToAddress"> From Address</label>
<input id="autocompleteToAddress" class="form-control" data-bind="addressAutoComplete: mapApplication.mapsModel.toAddress" placeholder="where are you going" type="text">
</div>
</div>
のようなものはありませんということであるあなたが「動作しない」で何を意味するかについて、より具体的なことはできますか?オートコンプリートリスナーのコールバックが呼び出されていますか? –