清除谷歌地图v3的方向



我们有两个文本框,在两个文本框中给出位置名称并将其转换为纬度和经度值。并将值传递给下面的函数。第一次方向加载成功,第二次修改文本框的值,它将覆盖前一次的方向。它没有清除之前加载的方向。我想清除这个方向,然后加载新方向。请帮助。

var directionsService = new google.maps.DirectionsService();  
var directionsDisplay;
function loadDirections(start,end)
{
    directionsDisplay = new google.maps.DirectionsRenderer();
    if (start && end) 
    {
        resultsDiv.update(''); // So we clear the div out ourselves
        var request = {
                origin: start,
                destination: end,
                travelMode: google.maps.TravelMode.DRIVING,
                unitSystem: google.maps.DirectionsUnitSystem.IMPERIAL 
        };
        directionsService.route(request, function(response, status) {
            if (status == google.maps.DirectionsStatus.OK) {
                  directionsDisplay.setDirections(response);
            }
        }); 
        directionsDisplay.setMap(map.map);
        directionsDisplay.setPanel(resultsDiv);
    }
}

移动这一行:

directionsDisplay = new google.maps.DirectionsRenderer();

…out of loadDirections() .

否则,您将在每个函数调用时使用DirectionsRenderer的新实例,这将不会覆盖由先前调用中使用的实例创建的路由。

最新更新