这个
Nearby Search
或
Text Search
服务将更适合您的用例,因为您希望获得多家医院,而不仅仅是一家(Find Place仅返回一家医院)。
请尝试下面的代码示例,其中显示了20英里以内的医院
Pyrmont NSW 2009
.请注意,位置必须是
LatLng
对象,它不能是邮政编码,但通过文本搜索,您可以将其添加到查询中。然后设定
type
到
hospital
.
var map;
var service;
function initialize() {
var pyrmont = new google.maps.LatLng(-33.8665433,151.1956316);
map = new google.maps.Map(document.getElementById('map'), {
center: pyrmont,
zoom: 13
});
var request = {
location: pyrmont,
radius: '32186',
query: '2009',
type: 'hospital'
};
service = new google.maps.places.PlacesService(map);
service.textSearch(request, callback);
}
function callback(results, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
var place = results[i];
createMarker(results[i]);
}
}
}
function createMarker(place) {
var marker = new google.maps.Marker({
map: map,
position: place.geometry.location,
title: place.name
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(place.name);
infowindow.open(map, this);
});
}
希望这有帮助!