how to find map route from source and destination address with autocomplete text search
my errror is this:
"DIRECTIONS_ROUTE: REQUEST_DENIED: There was an issue performing a Directions request.", stack: "Error: DIRECTIONS_ROUTE: REQUEST_DENIED:
how to solve this issue..
my code is below:
<script type="text/javascript">
function mapLocation() {
var source, destination;
var directionsDisplay;
var directionsService = new google.maps.DirectionsService();
google.maps.event.addDomListener(window, 'load', function () {
debugger;
new google.maps.places.SearchBox(document.getElementById('txtSrc'));
new google.maps.places.SearchBox(document.getElementById('txtDest'));
directionsDisplay = new google.maps.DirectionsRenderer({ 'draggable': true });
});
function initialize() {
debugger;
directionsDisplay = new google.maps.DirectionsRenderer();
var route = new google.maps.LatLng(25.5941, 85.1376);
var mapOptions = {
zoom: 10,
center: route
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
directionsDisplay.setMap(map);
google.maps.event.addDomListener(document.getElementById('GetRoute'), 'click', GetRoute);
}
function GetRoute() {
debugger;
source = document.getElementById("txtSrc").value;
destination = document.getElementById("txtDest").value;
var request = {
origin: source,
destination: destination,
travelMode: google.maps.TravelMode.DRIVING
};
directionsService.route(request, function (response, status) {
debugger;
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
directionsDisplay.setMap(map);
}
});
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 duration = response.rows[0].elements[0].duration.text;
var dvDistance = document.getElementById("dvDistance");
dvDistance.innerHTML = "";
dvDistance.innerHTML += "Distance Is: " + distance + "<br />";
dvDistance.innerHTML += "Duration Is:" + duration;
alert(dvDistance.innerHTML);
} else {
alert("Your Request For Distance Not Available");
}
});
}
google.maps.event.addDomListener(window, 'load', initialize);
}
mapLocation();
</script>