Javascript 如何将数据从数据库(mysql)加载到谷歌地图API(laravel)
所以我有一个laravel应用程序,我需要我的谷歌地图API来加载一些标记。我的数据库中存储了每个标记的lat和lng,我想将所有这些数据传递到google maps API的脚本中:Javascript 如何将数据从数据库(mysql)加载到谷歌地图API(laravel),javascript,php,mysql,laravel,google-maps-api-3,Javascript,Php,Mysql,Laravel,Google Maps Api 3,所以我有一个laravel应用程序,我需要我的谷歌地图API来加载一些标记。我的数据库中存储了每个标记的lat和lng,我想将所有这些数据传递到google maps API的脚本中: function initMap() { var lafarinera = {lat: 41.934029, lng: 2.265616}; var vic = {lat: 41.930445, lng: 2.254321}; var map = new google.maps.M
function initMap() {
var lafarinera = {lat: 41.934029, lng: 2.265616};
var vic = {lat: 41.930445, lng: 2.254321};
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 8,
center: vic
});
var contentString = '<div id="content">'+
'<div id="siteNotice">'+
'</div>'+
'<h3 id="firstHeading" class="firstHeading">La Farinera</h3>'+
'<img src="">'+
'<div id="bodyContent">'+
'<p> 84, Carrer de Sant Jordi, 82, 08500 Vic, Barcelona </p>'+
'<button type="button" class="btn btn-primary">Informacio</button>'+
'</div>'+
'</div>';
var infowindow = new google.maps.InfoWindow({
content: contentString,
maxWidth: 200
});
var marker_lafarinera = new google.maps.Marker({
position: lafarinera,
map: map,
title: 'La farinera'
});
marker_lafarinera.addListener('click', function() {
infowindow.open(map, marker_lafarinera);
});
}
函数initMap(){
var lafarinera={lat:41.934029,lng:2.265616};
var vic={lat:41.930445,lng:2.254321};
var map=new google.maps.map(document.getElementById('map'){
缩放:8,
中心:维克
});
var contentString=''+
''+
''+
“拉法里纳”+
''+
''+
“84,卡雷尔·德桑特·乔迪,巴塞罗那国际中心8208500”+
“信息”+
''+
'';
var infowindow=new google.maps.infowindow({
content:contentString,
最大宽度:200
});
var marker_lafarinera=新的google.maps.marker({
职位:拉法里纳,
地图:地图,
标题:《法里内拉》
});
marker_lafarinera.addListener('click',function()){
信息窗口。打开(地图,马克·拉法里纳);
});
}
通过这种方式,它只需一个标记就可以工作,因为我有lat和lng静态,但我希望只需从de db传递所有数据,这样我就可以在我的.js中使用它。您需要在脚本标记中添加标记数组或通过ajax获取它们
<script>
var markers= @json($markers);
$.each(markers as marker,function(){
addMarkerToMap(marker);
});
function addMarkerToMap(marker){
var location = new google.maps.LatLng(marker.latitude,marker.longitude);
marker = new google.maps.Marker({
position: location,
map: map,
});
});
</script>
var markers=@json($markers);
$.each(作为标记的标记,函数(){
addMarkerToMap(marker);
});
函数addMarkerToMap(标记器){
var location=new google.maps.LatLng(marker.lation,marker.longitude);
marker=新的google.maps.marker({
位置:位置,,
地图:地图,
});
});
我今天才尝试,但它成功了,如果我使用console.log(markers),我会从de DB获得我想要传递的所有数据。非常感谢你!