我正在尝试将 php $var 传递给 google map 脚本中的 Javascript。我在数据库中有地址表。通过 Controller ,我获取它来查看,现在尝试在 Javascript 中传递它并迭代它。
但是遇到一些麻烦,我认为我的代码有点损坏。顺便说一句,我没有经纬度,只有地址。
function initMap(){
var options = {
zoom:8,
center:
@foreach($address as $addr){
{!! $addr->address !!}
}
@endforeach
}
var map = new google.maps.Map(document.getElementById("map"), options);
var marker = new google.maps.Marker({
position:
@foreach($address as $addr){
{!! $addr->address !!}
}
@endforeach
map:map
});
var infoWindow = new google.maps.InfoWindow({
content:'content here'
});
marker.addListener('click', function () {
infoWindow.open(map, marker);
})
}
以及Map API调用
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=MY-KEY&callback=initMap"></script>
Controller
public function index()
{
$address = DB::table("allestates")
->get();
return view("home", compact('address'));
}
数据库中的地址列:
最佳答案
我发现一些可能导致该问题的因素
试试这个:
function initMap(){
var options = {
zoom:8,
center:
'{!! $address[0]->address !!}'
}
var map = new google.maps.Map(document.getElementById("map"), options);
var marker = new google.maps.Marker({
position:
@foreach($address as $addr)
'{!! $addr->address !!}'
@endforeach
map:map
});
var infoWindow = new google.maps.InfoWindow({
content:'content here'
});
marker.addListener('click', function () {
infoWindow.open(map, marker);
})
}
所以首先 @foreach (...)
不使用 {
或 }
其次,您想要输出引号内不仅是数字的任何信息
希望这有帮助
关于javascript - 在 Laravel 中将 php var 传递给 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53604497/