2015-06-19 3 views
-1

Можно ли проверить, существует ли место? В моем примере ниже, когда вы заполняете что-то вроде "wkjdbvkwe" в качестве места назначения, оно ничего не делает. Я хочу показать сообщение об ошибке и не знаю, как проверить if destination =! real place.API Карт Google v3 проверять место

var source, destination; 
 
    var directionsDisplay; 
 
    var directionsService = new google.maps.DirectionsService(); 
 
    google.maps.event.addDomListener(window, 'load', function() { 
 
     new google.maps.places.SearchBox(document.getElementById('txtDestination')); 
 
     directionsDisplay = new google.maps.DirectionsRenderer({ 'draggable': true }); 
 
    }); 
 

 
    function GetRoute() { 
 
     //*********DIRECTIONS**********************// 
 
     source = "Čadca, Slovensko"; 
 
     destination = document.getElementById("txtDestination").value; 
 

 
     var request = { 
 
      origin: source, 
 
      destination: destination, 
 
      travelMode: google.maps.TravelMode.DRIVING 
 
     }; 
 
     directionsService.route(request, function (response, status) { 
 
      if (status == google.maps.DirectionsStatus.OK) { 
 
       directionsDisplay.setDirections(response); 
 
      } 
 
     }); 
 

 
     //*********DISTANCE AND DURATION**********************// 
 
     var service = new google.maps.DistanceMatrixService(); 
 
     service.getDistanceMatrix({ 
 
      origins: [source], 
 
      destinations: [destination], 
 
      travelMode: google.maps.TravelMode.DRIVING, 
 
      unitSystem: google.maps.UnitSystem.METRIC, 
 
      avoidHighways: false, 
 
      avoidTolls: false 
 
     }, function (response, status) { 
 
      if (status == google.maps.DistanceMatrixStatus.OK && response.rows[0].elements[0].status != "ZERO_RESULTS") { 
 
       var distance = response.rows[0].elements[0].distance.text; 
 
       var dvDistance = document.getElementById("distance"); 
 
       dvDistance.innerHTML = ""; 
 
       dvDistance.innerHTML += distance; 
 

 
      } else { 
 
       alert("Nie je možné vypočítať vzdialenosť"); 
 
      } 
 
     }); 
 
    }
<script src="http://maps.googleapis.com/maps/api/js?sensor=false&libraries=places.js"></script> 
 

 
Destination: <input type="text" id="txtDestination" onblur="GetRoute()" /> 
 
<br/> 
 
<span id="distance"></span>

Спасибо!

ответ

1

Добавить ELSE в if (status == google.maps.DirectionsStatus.OK)

if (status == google.maps.DirectionsStatus.OK) { 
      directionsDisplay.setDirections(response); 
} else { 
    alert("Can't create directions:" + status); 
} 
+0

спасибо, это работает! – Kicker

Смежные вопросы