2013-10-31 64 views
0

我有3个页面,一个是显示来自php页面的数据的html,以及处理数据并从数据库中获取数据的php页面,最后一个是js页面。在Jquery中打开谷歌地图

我的问题是我有PHP页面中的Google地图代码,我不会在html页面中打印它。

现在我发送它的jquery并在html页面中打开它,但它是行不通的?为什么。

如果我从PHP页面复制代码并将其放在HTML页面中,Google地图将会打开...那么问题在哪里?

<style> 
     #map-canvas { 
     height: 100%; 
     margin: 0px; 
     padding: 0px 
     } 
    </style><script src='https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false'></script> 
    <script> 
function initialize() { 
    var myLatlng = new google.maps.LatLng(24.701564296830245,46.76211117183027); 
    var mapOptions = { 
    zoom: 4, 
    center: myLatlng, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
    } 
    var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions); 

    var marker = new google.maps.Marker({ 
     position: myLatlng, 
     map: map, 
     title: 'Hello World!' 
    }); 
} 

google.maps.event.addDomListener(window, 'load', initialize); 

    </script> 
<div id='map-canvas'></div> 
+0

的JavaScript执行客户端,PHP执行服务器端。如果您的.php文件中有JavaScript,并且用户从不查看它,则不执行JavaScript。由于我不知道问题的具体细节,因此我不能将其标记为答案。 –

+0

那么,我能做什么?我怎么能发送上述代码从php页面的地图到jquery – user2933912

+0

的HTML页面我会回答这个问题的实际答案,而不是评论。敬请关注。 –

回答

0

这是一个“如何发送上述代码从php页面到jquery的html页面的代码”的例子。

PHP(map.php):

<?php 
echo " 
<div id='map-canvas' style='height: 100%; margin: 0px; padding: 0px'></div> 
<script src='https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false'></script> 
<script> 
function initialize() { 
    var myLatlng = new google.maps.LatLng(24.701564296830245,46.76211117183027); 
    var mapOptions = { 
    zoom: 4, 
    center: myLatlng, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
    } 
    var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions); 

    var marker = new google.maps.Marker({ 
     position: myLatlng, 
     map: map, 
     title: 'Hello World!' 
    }); 
} 

google.maps.event.addDomListener(window, 'load', initialize); 

</script>"; 
?> 

我张贴,因为我不知道浏览器是如何解析<body>异步内<style>后短暂地改变了上面的代码。我还在<script>之前移动了上面的div#map-canvas,以便在脚本执行之前HTML将存在。

HTML页面:

<head> 
<script> 
$.ajax({ 
    url: "map.php", 
}) 
.done(function(msg) { 
    $('#where_map_is_going').html(msg); 
}); 
</script> 
</head> 
<body> 
<div id="where_map_is_going"></div> 
+0

谢谢,但你的代码工作时,刷新页面,我们可以看到地图为什么? – user2933912