jQuery 位置选择器 API 位置名称字段无效

jQuery location picker API location name field is not working

我正在使用 jquery 位置选择器 API 进行地图查看。 API 中的所有内容都工作正常,但当我们输入位置名称时它不起作用。自动完成选项也不起作用,地图不显示位置。

Location: <input type="text" id="location" style="width: 200px"/>
Lat <input type="text" id="lat" style="width: 200px"/>
Long: <input type="text" id="lng" style="width: 200px"/>
<div id="us2" style="width: 500px; height: 400px;"></div>   

<script>$('#us2').locationpicker({
location: {latitude: 46.15242437752303, longitude: 2.7470703125},   
radius: 0,
inputBinding: {
    latitudeInput: $('#lat'),
    longitudeInput: $('#lng'),
    locationNameInput: $('#location')
},
 enableAutocomplete: true,
 onchanged: function(currentLocation, radius, isMarkerDropped) {
  alert("");
 }
 });
  </script> 

最有可能发生这种情况,因为初始化位置选择器后 DOM 尚未加载。

尝试调用位置选择器初始化,如下所示:

$(function() {


  $('#us2').locationpicker({
   location: {latitude: 46.15242437752303, longitude: 2.7470703125},   
   radius: 0,
   inputBinding: {
      latitudeInput: $('#lat'),
      longitudeInput: $('#lng'),
      locationNameInput: $('#location')
   },
   enableAutocomplete: true,
   onchanged: function(currentLocation, radius, isMarkerDropped) {
      alert("Location changed. New location (" + currentLocation.latitude + ", " + currentLocation.longitude + ")");
    }
  });


});

Demo (Plunker)

我遇到了同样的问题。事实证明,如果您使用带有 API 键的 Google 地图 API,则需要在 google 开发人员控制台中启用 "Google Places API Web Service"。在我这样做之后,自动完成工作。