Javascript 标记不';不要加载谷歌地图,
我正在尝试从数据库加载标记,但这些标记未加载。但是,如果我尝试手动加载它的工作 my view_file.phpJavascript 标记不';不要加载谷歌地图,,javascript,google-maps-api-3,codeigniter-3,Javascript,Google Maps Api 3,Codeigniter 3,我正在尝试从数据库加载标记,但这些标记未加载。但是,如果我尝试手动加载它的工作 my view_file.php var map; function initialize(lt,lg) { var mapDiv = document.getElementById('map-canvas'); map = new google.maps.Map(mapDiv, { center: new google.maps.LatLng(lt, lg), zoo
var map;
function initialize(lt,lg) {
var mapDiv = document.getElementById('map-canvas');
map = new google.maps.Map(mapDiv, {
center: new google.maps.LatLng(lt, lg),
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
<?php foreach ($position as $row) { ?>
$lat = $row['lat'];
$longi = $row['longi'];
var latLng = new google.maps.LatLng($lat,$longi);
new google.maps.Marker({
position: latLng,
map: map
})
<?php } ?>
}
</script>
</head>
<body onload="initialize(-0.165343, 113.930935)">
<div id="map-canvas" style="width: 100%; height: 600px"></div>
my model maps.php
function marker(){
$post = $this->db->get('koor');
return $post->result();
}
以下代码为works(手动输入坐标)。控制器同上
var map;
function initialize(lt,lg) {
var mapDiv = document.getElementById('map-canvas');
map = new google.maps.Map(mapDiv, {
center: new google.maps.LatLng(lt, lg),
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
marker(-0.735467, 110.521677);
marker(1.549480, 116.124705);
marker(-2.558367, 115.179880);
}
function marker(lt,lg){
var latLng = new google.maps.LatLng(lt,lg);
var marker = new google.maps.Marker({
position: latLng,
map: map
});
}
</script>
</head>
<body onload="initialize(-0.165343, 113.930935)">
<div id="map-canvas" style="width: 100%; height: 600px"></div>
var映射;
函数初始化(lt、lg){
var mapDiv=document.getElementById('map-canvas');
map=新的google.maps.map(mapDiv{
中心:新google.maps.LatLng(lt,lg),
缩放:7,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
标记(-0.735467,110.521677);
标记(1.549480116.124705);
标记(-2.558367,115.179880);
}
功能标记(lt、lg){
var latLng=新的google.maps.latLng(lt,lg);
var marker=new google.maps.marker({
位置:latLng,
地图:地图
});
}
我试图修改我的代码,搜索类似的问题,但没有任何效果,这是我的代码的最后一个形状
更新
我已经解决了这个问题
var map;
function initialize() {
var mapDiv = document.getElementById('map-canvas');
map = new google.maps.Map(mapDiv, {
center: new google.maps.LatLng(-0.165343, 113.930935),
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var lat, longi, marker;
<?php foreach ($position as $row) { ?>
lat = <?php echo $row->lat ?>,
longi = <?php echo $row->longi ?>,
marker = new google.maps.LatLng(lat,longi);
new google.maps.Marker({
position: marker,
map: map
});
<?php } ?>
}
var映射;
函数初始化(){
var mapDiv=document.getElementById('map-canvas');
map=新的google.maps.map(mapDiv{
中心:新google.maps.LatLng(-0.165343113.930935),
缩放:7,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
宽变型、长变型、标记型;
纬度=,
longi=,
marker=新的google.maps.LatLng(lat,longi);
新的google.maps.Marker({
位置:标记器,
地图:地图
});
}
您的错误:
$lat = $row['lat'];
$longi = $row['longi'];
这显示在javascript中。
确保它是用php而不是javascript执行的
正确的代码:
<?php
$lat = $row['lat'];
$longi = $row['longi'];
?>
var映射;
函数初始化(lt、lg){
var mapDiv=document.getElementById('map-canvas');
map=新的google.maps.map(mapDiv{
中心:新google.maps.LatLng(lt,lg),
缩放:7,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
拉特变幅,长变幅;
lat=;
longi=;
标记(横向、纵向);
}
功能标记(lt、lg){
var latLng=新的google.maps.latLng(lt,lg);
var marker=new google.maps.marker({
位置:latLng,
地图:地图
});
}
谢谢您的快速回复,是的,这是我的错,我已经按照您的建议修复了,但是地图页面是空白的。在浏览器控制台日志中不加载任何内容。是否确定$row['lat']
和$row['longi']
的值正确?请获取var_dump
并查看值我确保这些值是正确的,var_哑数组的结果(1){[“位置”=>array(2){[0]=>object(stdClass){23(2){[“lat”]=>string(10)'-1.254474747474742”[“longi”]=>string(11)“116.8599428”}[1]=>object 24(2){“lat”=>string(9)+-1.258”=>string(11)“longi 86”[.009}}在您的var_dump
中,我看到$row
是stdClass
,因此您必须使用$row->lat
和$row->longi
现在我在浏览器控制台中遇到一个错误,Uncaught SyntaxError:Unexpected token var。至少出现了错误。哈哈谢谢你的快速回复,是的,这是我的错,我已经按照你和赛义德的建议解决了这个问题,但是网页没有在浏览器控制台加载任何东西。
<?php
$lat = $row['lat'];
$longi = $row['longi'];
?>
var map;
function initialize(lt,lg) {
var mapDiv = document.getElementById('map-canvas');
map = new google.maps.Map(mapDiv, {
center: new google.maps.LatLng(lt, lg),
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var lat, longi;
<?php foreach ($position as $row) { ?>
lat = <?= $row->lat ?>;
longi = <?= $row->longi ?>;
marker(lat, longi);
<?php } ?>
}
function marker(lt,lg){
var latLng = new google.maps.LatLng(lt,lg);
var marker = new google.maps.Marker({
position: latLng,
map: map
});
}
</script>
</head>
<body onload="initialize(-0.165343, 113.930935)">
<div id="map-canvas" style="width: 100%; height: 600px"></div>