2011-11-12 4 views
1

A l'intérieur de l'objet infowindow google maps J'ai appelé la fonction showHotel() mais elle n'a pas été appelée. Quand j'écris alerert ('') fonctionne, mais ma propre fonction définie ne fonctionne pas.javascript appel de fonction

function showHotel(){ 
     alert('Wapal po'); 
    } 
    var infowindow = new google.maps.InfoWindow({ 
      content: '<a href="#" onclick="showHotel()">Show Tasweer</a>' 
    }); 

Répondre

5

Vous devez déclarer globalement showHotel. Si vous ajoutez des écouteurs d'événement à une chaîne HTML, la portée actuelle n'est pas respectée. Votre code actuel ressemble probablement:

window.onload = function(){ //Or any inner function 
    function showHotel() ... //This declares a local method  
    ... 
     content: '<a ... onclick="showHotel()">' 
    ... 
} 

Une méthode pour leak la méthode showHotel à la portée globale est en préfixant la méthode par window.:

window.showHotel = function(){...}