1

前のページから緯度経度でGoogleマップにルートをレンダリングし(htmlフォームで送信)、受信値をphp隠しタイプに入れ、jqueryで値をプルし、隠しタイプの値から開始点、終了点を定義し、最終的にroutefunctionを呼び出しますが、それは方法ルートを示すものではありません

レンダリング セクションにアラートを配置しようとしましたが、正常に動作しますが、ウェイ ルートは表示されません。理由はわかりません

これは私のコードです

<?php
//get lat long from previous page html form
    $press = $_POST["send"];
    $lat1 = $_POST["lat1"];
    $long1 = $_POST["long1"];
    $lat2 = $_POST["lat2"];
    $long2 = $_POST["long2"];



?>

<!DOCTYPE html>
<head>     
<script type="text/javascript" src="./jquery.min.js"></script>
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=my_key&sensor=false"></script> 


<script type="text/javascript">


    var directionsDisplay;
    var directionsService = new google.maps.DirectionsService();
    var map;
    var rendererOptions = {draggable: true}; //define dragble direction
    function initialize() { 
        directionsDisplay = new google.maps.DirectionsRenderer(rendererOptions); 
        var center = new google.maps.LatLng(13.76493,100.5383);  

        var mapOptions = {    
            zoom:7,    
            mapTypeId: google.maps.MapTypeId.ROADMAP,
            center: center
             }        
             map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions); //render map
       calcRoute(); //call route function
        }

    function calcRoute()
    {//get lat long from hidden type 
    $(document).ready(function(){
       var lat1 = $("#lat1").val();
       var long1 = $("#long1").val();
       var lat2 = $("#lat2").val();
       var long2 = $("#long2").val(); 

    var start = new google.maps.LatLng(lat1,long1);//define start point
    var end = new google.maps.LatLng(lat2,long2);//define end point
        var request = {    
            origin:start,    
            destination:end,    
            travelMode: google.maps.DirectionsTravelMode.DRIVING  
            };  

        directionsService.route(request, function(result, status) { 
            if (status == google.maps.DirectionsStatus.OK) {  
                 directionsDisplay.setDirections(result);  
                 alert("DO");  //it's show alert when redirect from previous page
                }
            });
        });
    }

</script>  
</head>
<body onload="initialize()"> 
<div id="map_canvas" style="width:500px; height:400px"></div>
<?php
    //put value from previous page on hidden type
    echo "<input type='hidden' id='lat1' value='$lat1'>";
    echo "<input type='hidden' id='long1' value='$long1'>";
    echo "<input type='hidden' id='lat2' value='$lat2'>";
    echo "<input type='hidden' id='long2' value='$long2'>";
?>
4

0 に答える 0