Javascript 谷歌地图搜索框
我正在尝试使用google map api中的搜索框搜索位置。我正在使用google map Javascript api v3。当我尝试搜索某个位置时,它没有发生。有人能帮我解决问题吗。这是html和Javascript代码片段Javascript 谷歌地图搜索框,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我正在尝试使用google map api中的搜索框搜索位置。我正在使用google map Javascript api v3。当我尝试搜索某个位置时,它没有发生。有人能帮我解决问题吗。这是html和Javascript代码片段 <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta name="description" content="">
<meta name="author" content="">
<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/bootstrap.css" rel="stylesheet">
<script src="js/jquery.min.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&libraries=places"></script>
</head>
<body>
<div class="col-md-8">
<input id="pac-input" class="controls" type="text" placeholder="Search Box">
<div class="container" id="map-canvas" ></div>
</div>
<script>
var map = new google.maps.Map(document.getElementById('map-canvas'),{
center:{
lat: 12.9715987,
lng: 77.59456269999998
},
zoom: 12
});
var marker = new google.maps.Marker({
position:{
lat: 12.9715987,
lng: 77.59456269999998
},
map: map,
draggable:true
});
var searchBox = new google.maps.places.SearchBox(document.getElementById('pac-input'));
google.maps.event.addListener(searchBox , 'place_changed' , function(){
var places = searchBox.getPlaces();
var bounds = new google.maps.LatLngBounds();
var i,place;
for( i = 0; palce = places[i]; i++)
{
bounds.extend(place.geometry.location);
marker.setPosition(place.geometry.location);
}
map.fitBounds(bounds);
map.setZoom(12);
});
</script>
<script src="js/jquery.min.js"></script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="js/bootstrap.min.js"></script>
<script src="js/Test.js"></script>
</body>
</html>
var map=new google.maps.map(document.getElementById('map-canvas'){
中心:{
拉脱维亚:12.9715987,
液化天然气:77.594562699998
},
缩放:12
});
var marker=new google.maps.marker({
职位:{
拉脱维亚:12.9715987,
液化天然气:77.594562699998
},
地图:地图,
德拉格布尔:是的
});
var searchBox=new google.maps.places.searchBox(document.getElementById('pac-input');
google.maps.event.addListener(搜索框,'place_changed',函数(){
var places=searchBox.getPlaces();
var bounds=new google.maps.LatLngBounds();
var i,地点;
对于(i=0;palce=places[i];i++)
{
扩展(place.geometry.location);
标记器.设置位置(位置.几何.位置);
}
映射边界(bounds);
map.setZoom(12);
});
搜索框
,没有place\u changed
-事件(这是一个自动完成的事件)。Searchbox
的事件称为places\u changed
palce
for( i = 0; palce = places[i]; i++)
函数init(){
var map=new google.maps.map(document.getElementById('map-canvas'){
中心:{
拉脱维亚:12.9715987,
液化天然气:77.594562699998
},
缩放:12
});
var searchBox=new google.maps.places.searchBox(document.getElementById('pac-input');
map.controls[google.maps.ControlPosition.TOP_CENTER].push(document.getElementById('pac-input');
google.maps.event.addListener(搜索框,'places_changed',函数(){
searchBox.set('map',null);
var places=searchBox.getPlaces();
var bounds=new google.maps.LatLngBounds();
var i,地点;
for(i=0;place=places[i];i++){
(功能(地点){
var marker=new google.maps.marker({
位置:place.geometry.location
});
marker.bindTo('map',searchBox,'map');
google.maps.event.addListener(标记'map_changed',函数(){
如果(!this.getMap()){
这是;
}
});
扩展(place.geometry.location);
}(地点);;
}
映射边界(bounds);
searchBox.set('map',map);
setZoom(Math.min(map.getZoom(),12));
});
}
google.maps.event.addDomListener(窗口'load',init)代码>
html,
身体,
#地图画布{
保证金:0;
填充:0;
身高:100%;
}
函数init(){
var map=new google.maps.map(document.getElementById('map-canvas'){
中心:{
拉脱维亚:12.9715987,
液化天然气:77.594562699998
},
缩放:12
});
var searchBox=new google.maps.places.searchBox(document.getElementById('pac-input');
map.controls[google.maps.ControlPosition.TOP_CENTER].push(document.getElementById('pac-input');
google.maps.event.addListener(搜索框,'places_changed',函数(){
searchBox.set('map',null);
var places=searchBox.getPlaces();
var bounds=new google.maps.LatLngBounds();
var i,地点;
for(i=0;place=places[i];i++){
(功能(地点){
var marker=new google.maps.marker({
位置:place.geometry.location
});
marker.bindTo('map',searchBox,'map');
google.maps.event.addListener(标记'map_changed',函数(){
如果(!this.getMap()){
这是;
}
});
扩展(place.geometry.location);
}(地点);;
}
映射边界(bounds);
searchBox.set('map',map);
setZoom(Math.min(map.getZoom(),12));
});
}
google.maps.event.addDomListener(窗口'load',init)代码>
html,
身体,
#地图画布{
保证金:0;
填充:0;
身高:100%;
}
您发布的页面无效(未关闭)。请提供一个展示该问题的文件确认它对我有效。感谢您提供的信息。您可以帮助我如何为每个地方创建单独的标记。我添加了一个示例如何自定义它我的自定义操作未在特定位置找到,我想显示错误我的“诊所未在该特定位置找到”如何自定义我的自定义项在特定位置找不到,我想显示错误我的“诊所在特定位置找不到”