2012-04-20 25 views
7
function calcRoute() { 
     var start = document.getElementById("start_").value; 
     var end = document.getElementById("end_").value; 
     var request = { 
      origin: start, 
      destination: end, 
      travelMode: google.maps.TravelMode.DRIVING 
     }; 
     directionsService.route(request, function (response, status) { 
      if (status == google.maps.DirectionsStatus.OK) { 
       directionsDisplay.setDirections(response); 
      } 
     }); 
    } 

Da un mensaje de error en Chrome: "TypeError no detectado: no se puede llamar al método 'setDirections' de undefined". ¿Alguien podría sugerir arreglar esto? Gracias¿Cómo resolver el error "no se puede llamar al método ... de indefinido"?

+0

use '===' en lugar de '==' para comparar, solo por si acaso + buen hábito de programación. –

+1

El mensaje es bastante claro: 'directionsDisplay' no se ha definido en ninguna parte. –

+0

var directionsDisplay; Defino esto como la variable global – kamal

Respuesta

6

Te faltan (var mundial)

//var directionsService = new google.maps.DirectionsService(); 
var directionsDisplay = new google.maps.DirectionsRenderer({ 'map': map }); 

Así directionsDisplay no está definido.

+2

gracias lo soluciono – kamal

+0

Me alegra saberlo. –

Cuestiones relacionadas