私は Google マップ javascript v2 を介して指定された方向の期間と距離を取得しようとしています。私がやっていることは、ボタンをクリックすることです。サーバー側から (gpx ファイルから) 緯度、経度情報を返す ajax リクエストを送信しています。再び、新しいウェイポイント マップから始まるマップで div を再設定します `
<head>
<script src="http://maps.google.com/maps?file=api&v=2&" type="text/javascript"></script>
<script type="text/javascript">
var map;
var directionsPanel;
var directions;
var points_lt = [12.9172543,12.9326889,12.9761378,12.9896399];
var points_lg = [77.6230109,77.6131779,77.6017195,77.5928038];
function initialize() {
map = new GMap2(document.getElementById("map_canvas"));
var wp = new Array(2);
wp[0] = new GLatLng(12.9172543,77.6230109);
wp[1] = new GLatLng(13.0144572,77.5689697);
map.setUIToDefault();
// load directions
directionsPanel = document.getElementById("route");
directions = new GDirections(map, directionsPanel);
directions.loadFromWaypoints(wp);
}
function ChangeIt(){
var cur_lt=null;
var cur_lg=null;
var cal=$.ajax({
type: "GET",
url: "./Handler.php?q=now",
dataType: "html"
});
cal.done(function(msg){
if(msg == 0){
return false;
}
var Gpoint=msg.split("|");
cur_lt=Gpoint[0];
cur_lg=Gpoint[1];
var wp = new Array(2);
wp[0] = new GLatLng(cur_lt,cur_lg);
wp[1] = new GLatLng(13.0144572,77.5689697);
document.getElementById("map_canvas").innerHTML="";
map = null;
directionsPanel.innerHTML = "" ;
map = new GMap2(document.getElementById("map_canvas"));
map.setUIToDefault();
directions = new GDirections(map,directionsPanel);
directions.loadFromWaypoints(wp);
alert(directions.getDuration().html);
});
}
$(document).ready(function(){
var a= function(){
ChangeIt();
};
$("#bt1").click(function(){
ChangeIt();
});
//setInterval(a, 3000);
});
</script>
</head>
<body onload="initialize()" onunload="GUnload()">
<input type="button" name="bt1" value="Change Route" id="bt1">
<div id="map_canvas" style="width: 600px; height: 400px ;left:350px"></div>
<div id="route" style="width: 25%; height:480px; float:right; border; 1px solid black;"> </div>
<br/>
`
しかし、getDistance または getDuration を実行しようとすると、アラートが表示されません。予期しない null または何かを返していると思います。助けてください。私はGoogleマップを初めて使用します。間違っている場合はお知らせください