Google Maps v3 API获取路由时间失败

时间:2013-01-15 00:52:31

标签: javascript google-maps google-maps-api-3

您能否向我解释为什么我在这段代码中没有得到google.maps.DirectionsStatus.OK

function measureDistance(m1, m2) {
    var wp = new Array();
    var lstart = new google.maps.LatLng(markers[m1].position);
    var lend = new google.maps.LatLng(markers[m2].position);
    var request = {
        origin : lstart,
        destination : lend,
        waypoints : [],
        optimizeWaypoints: true,
        travelMode : google.maps.DirectionsTravelMode.DRIVING
    };
    directionsService.route(request, function(response, status) {
        if (status== google.maps.DirectionsStatus.OK) {
            response.routes[0].legs[0].duration.text;
        } else {
            document.getElementById('locationD').value = "drawRouteBad";
        }

    });
}

Markers是一个带有地图标记的全球字典。 directionsService是全局定义的(同一directionsService在另一个函数中适用于我)。问题是,由于某些原因我无法得到正确的答案(我的网站上的某个字段中有drawRouteBad)。

1 个答案:

答案 0 :(得分:0)

问题是,我不需要创建新的LatLng对象。什么是内部标记[]。位置足以开始和结束。

 var lstart = markers[m1].position;
 var lend = markers[m2].position;