2010-03-24 3 views
3

Dire que j'ai ce morceau de code:Comment échapper aux personnages dans le titre d'un marqueur dans Google Maps?

var marker = new google.maps.Marker({ 
    position: location, 
    title: 'Búfals', 
    map: map 
}); 

Cela crée un marqueur comme prévu, mais si je passe la souris la souris dessus, je fais ce que je me attends
vois pas « B » ú Fals (au lieu I voir le code html).

Cela ne fait aucune différence:

var marker = new google.maps.Marker({ 
    position: location, 
    title: unescape('Búfals'), 
    map: map 
}); 

Toutes les idées?

Merci.

Répondre

2

Cela peut être un surpuissant mais il fonctionne:

function decode(txt){ 
    var sp = document.createElement('span'); 
    sp.innerHTML = txt; 
    return sp.innerHTML; 
} 

decode('Búfals') 
0

Vous pouvez utiliser:

var marker = new google.maps.Marker({ 
    position: myLatlng, 
    map: map, 
    title: unescape('B%FAfals') 
}); 
+0

Merci Daniel. Oui cela fonctionne mais quel est ce code '% FA'? – Anthony

+0

@Anthony: Il est appelé pour codage en pourcentage (http://en.wikipedia.org/wiki/Percent-encoding). Ceci est un tableau des caractères ASCII avec cet encodage: http://i-technica.com/whitestuff/urlencodechart.html. La fonction JavaScript 'unescape()' renvoie la chaîne ASCII pour la valeur de codage spécifiée. –

+0

Je vois. Merci Daniel. Le truc, c'est que je ne peux pas vraiment utiliser cette solution car la chaîne que j'utilise est codée en html (pas en pourcentage). Au moins, je comprends pourquoi l'évasion n'a pas fonctionné. – Anthony

1

similaires à ce que Daniel a suggéré, vous pouvez essayer d'utiliser la valeur unicode pour le personnage que vous essayez d'afficher, dans votre cas, il serait \u09fa.

+0

Vous et cette page a été ma solution pour ce problème. http://www.utf8-chartable.de/ –

Questions connexes