- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 Google 地点自动完成功能。而且我不知道如何获取 address_components 的 place_id。在 JSON 中只有 long_name、short_name 类型。我的代码在这里:
var object_location = document.getElementById('object_location'),
autoComplete = new google.maps.places.Autocomplete(object_location);
autoComplete.addListener('place_changed', function() {
var place = autoComplete.getPlace();
console.log('place = ', place);
});
我不需要我的地点的 place_id。 我特别需要 address_components 的 place_ids
最佳答案
如果您对结果进行反向地理编码,它将为包含该位置的每个地址组件返回结果(包括 place_id)。
autoComplete.addListener('place_changed', function() {
var place = autoComplete.getPlace();
map.setZoom(11);
var marker = new google.maps.Marker({
position: place.geometry.location,
map: map
});
infowindow.setContent(place.formatted_address);
infowindow.open(map, marker);
geocoder.geocode({
latLng: place.geometry.location
},
function(results, status) {
if (status === 'OK') {
console.log("revGeo result=" + JSON.stringify(results));
var htmlStr = "<table border='1'>";
for (var i = 0; i < results.length; i++) {
htmlStr += "<tr><td>" + results[i].formatted_address + "</td><td>" + results[i].place_id + "</td></tr>";
}
htmlStr += "</table>";
infowindow.setContent(infowindow.getContent() + "<br>" + htmlStr);
} else {
window.alert('Geocoder failed due to: ' + status);
}
});
});
代码片段:
var geocoder;
var map;
var infowindow;
function initialize() {
geocoder = new google.maps.Geocoder();
infowindow = new google.maps.InfoWindow();
var map = new google.maps.Map(
document.getElementById("map_canvas"), {
center: new google.maps.LatLng(37.4419, -122.1419),
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var object_location = document.getElementById('object_location'),
autoComplete = new google.maps.places.Autocomplete(object_location);
autoComplete.addListener('place_changed', function() {
var place = autoComplete.getPlace();
map.setZoom(11);
var marker = new google.maps.Marker({
position: place.geometry.location,
map: map
});
infowindow.setContent(place.formatted_address);
infowindow.open(map, marker);
geocoder.geocode({
latLng: place.geometry.location
},
function(results, status) {
if (status === 'OK') {
var htmlStr = "<table border='1'>";
for (var i = 0; i < results.length; i++) {
htmlStr += "<tr><td>" + results[i].formatted_address + "</td><td>" + results[i].place_id + "</td></tr>";
}
htmlStr += "</table>";
infowindow.setContent(infowindow.getContent() + "<br>" + htmlStr);
} else {
window.alert('Geocoder failed due to: ' + status);
}
});
});
}
google.maps.event.addDomListener(window, "load", initialize);
html,
body,
#map_canvas {
height: 100%;
width: 100%;
margin: 0px;
padding: 0px
}
<script src="https://maps.googleapis.com/maps/api/js?libraries=geometry,places&key=AIzaSyCkUOdZ5y7hMm0yrcCQoCvLwzdM6M8s5qk"></script>
<input id="object_location" />
<div id="map_canvas"></div>
关于javascript - 获取 address_components 的 place_id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43499392/
我的网络应用收到用户选择的地理区域的 place_id。例如:如果用户在前端选择 place called "Comacchio" (这是一个城镇,administrative_area_level_
我可以使用 This Link 获取地点 ID .但问题是这是基于位置搜索。我想使用可拖动标记获取 place_id,所以我不能使用上面的链接。我正在移动 Google map 上的标记,那么如何在
我有一个由他们的 place_id 定义的谷歌地图地点。 地方可以引用: 地址,例如 221B Baker St, Marylebone, London NW1 6XE, UK:ChIJFbp6NM8
我正在使用 Google 的自动填充地点来获取地点预测。现在,当他们点击其中一个预测时,我想获取 place_id,但我不知道该怎么做? 这是我的 PlacaesAutoCompleteAdapter
这个问题在这里已经有了答案: Get place_id of address_components (1 个回答) 2年前关闭。 var autocomplete; function initiali
我正在使用带有谷歌地点自动完成功能的输入字段。我已将自动完成设置为仅预测城市,但我正在努力寻找一种简单的方法来获取所选城市的唯一 place_id。我不想将它与谷歌地图一起使用。我需要它只是为了识别所
有人知道如何使用 place_id 作为静态 map 上的标记位置吗? 在文档中 https://developers.google.com/maps/documentation/maps-stati
我正在使用 Google 地点自动完成功能。而且我不知道如何获取 address_components 的 place_id。在 JSON 中只有 long_name、short_name 类型。我的
是否可以使用 Google API 为网站创建一个与此完全相同的 map : https://www.google.pl/maps/place/Googleplex/@37.422,-122.0840
我正在使用适用于 Android 的 Google Places API。我在同一城市获得不同的 place_id。早些时候它返回 ChIJwe1EZjDG5zsRaYxkjY_tpF0 作为 MUM
我在我的应用程序中使用 Google map 的预测搜索(基于网络的客户端 JavaScript 版本),the API returns a list of locations without any
HeIIo,使用谷歌地图 API 进行搜索,我可以找到某个地方,然后存储它的详细信息。但是,该数组不包含可在谷歌地图上打开此地点的谷歌地图链接。 通过 API,我收到 place_id,我认为这应该足
为了减少 API 调用次数,我尝试通过一次传递多个 place_id(最多 10 个)来查询地点详细信息。除了文档之外,我没有找到任何有用的信息。 https://developers.google.
我想构建一个应用程序,根据用户兴趣使用 Google Places 显示用户周围的地点。如前所述 here : Place IDs are exempt from the caching restri
假设我想获得关于某个地方的评论。我想提出这个要求: /places/{PLACE_ID}/评论 我怎么能用 TastyPie 做到这一点? 最佳答案 按照 Tastypie's docs 中的示例进行
我有 2 个通过 Google Places API 获得的地点 ID,我想显示指向 Google map 应用程序的链接,以获取这两个地点之间的路线。 我发现可以使用 saddr 和 daddr 查
我有 2 个通过 Google Places API 获得的地点 ID,我想显示指向 Google map 应用程序的链接,以获取这两个地点之间的路线。 我发现可以使用 saddr 和 daddr 查
在为位置执行自动完成 API 调用时,我请求来自 google 的 JSON 响应。 “id”和“place_id”字符串有什么区别? 这两个 ID 是世界上任何一个城市唯一的吗? Google pl
在谷歌上放置文档它说: "Best practise is to refresh your stored place IDs periodically, after 100 days for exam
我想获取地点信息like this example位置、城市、州、经度、纬度、使用 place_id 的格式化_地址。我收到错误未捕获的类型错误:未定义不是函数。我正在使用this: places/p
我是一名优秀的程序员,十分优秀!