[英]how to pass php variables to javascript map function
只想将php变量$ x和$ y传递给javascript map函数(如lat和long)。 请帮忙。 这是我的控制器:
<?php
$x = 25.114667;
$y = 55.137797;
?>
这是我的JS文件:
function initialize()
{
var myCenter = new google.maps.LatLng(lat,long);
var mapOptions = {
center:myCenter,
zoom:12,
mapTypeId:google.maps.MapTypeId.ROADMAP
};
var map=new google.maps.Map(document.getElementById("googleMap")
,mapOptions);
} google.maps.event.addDomListener(document.getElementById('showhidemap'), 'click', initialize);
你在js变量lat
和long
中传递字符串。 直接将值赋值为float
尝试这个
var lat = <?php echo $x; ?>;
var long = <?php echo $y; ?>;
还必须在Google地图初始化的上方包含带谷歌地图密钥的脚本。
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=GOOGLE_MAP_KEY&sensor=true"> </script>
GOOGLE MAP KEY:必须为您的网站生成。
看到一些网址可能对你有帮助
https://developers.google.com/maps/tutorials/fundamentals/adding-a-google-map
https://developers.google.com/maps/signup?csw=1
https://developers.google.com/maps/documentation/javascript/tutorial
你试着添加吗?
$x = 25.114667;
$y = 55.137797;
某些标签就像
<div data-lat="<?php echo $y; ?>" data-long="<?php echo $y; ?>" id="showhidemap">show map</div>
您需要在.php文件中创建一个Javascript对象, 就在您包含javascript文件 (包含上述片段的文件)之前,该文件将由您的经度/纬度信息填充。 像这样:
你的PHP文件
<html>
...
<script type="text/javascript">
var mapLangLat = {
long:<?php echo $x; ?>,
lati:<?php echo $y; ?>
};
</script>
<script src="my_remote_script.js"></script>
...
你的JAVASCRIPT文件
<script>
function initialize()
{
var lat = window.mapLangLat.lati;
var long = window.mapLangLat.long;
...
需要找到上面的PHP部分才能编写那个小javascript对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.