我使用typeahead-addresspicker jquery插件为用户提供自动填充字段和地图以选择位置。
插件工作正常,可以找到任何地址或位置,并在地图上放置标记。但是,当设置地址时,我想将Google地理编码值插入表单字段中。为此,我听地址选择器:在代码中触发但未执行处理程序的选定事件。
script(src='/js/lib/jquery/jquery-2.1.0.min.js')
script(src='/js/lib/typeahead/typeahead.js')
script(src='/js/lib/typeahead/typeahead-addresspicker.js')
script.
$.noConflict();
jQuery(document).ready(function($) {
var addressPicker = new AddressPicker({map: {id: '#map', options:{center: new google.maps.LatLng(51.0360272, 3.7359072), zoom: 8}},
marker: {draggable: true, visible: true, position:new google.maps.LatLng(51.0360272, 3.7359072)},
zoomForLocation: 18,
reverseGeocoding: true});
$('#address').typeahead(null, {
displayKey: 'description',
source: addressPicker.ttAdapter()
});
addressPicker.bindDefaultTypeaheadEvent($('#address'));
$(addressPicker).on('addresspicker:selected', function (event, result) {
$('#lat_input').val(result.lat());
$('#lng_input').val(result.lng());
$('#number_input').val(result.nameForType('street_number'));
$('#name_input').val(result.nameForType('premise'));
$('#street_input').val(result.nameForType('street_address'));
$('#suburb_input').val(result.nameForType('locality'));
$('#state_input').val(result.nameForType('administrative_area_level_1'));
$('#postcode_input').val(result.nameForType('postal_code'));
$('#country_input').val(result.nameForType('country'));
});
});
我是否遗漏了有关Jquery事件的内容?
答案 0 :(得分:0)
修正了它,它是noConflict()函数。删除它,它工作正常。