2010-07-22 2 views
2

Je voudrais afficher le nom de l'étiquette de zone après qu'une personne a cliqué dessus. Malheureusement, lorsque j'utilise le code ci-dessous pour la zone de la carte, je reçois un nom indéfini de nom obiekt. C'est bizarre parce que pour la zone de texte 'kot' cela fonctionne bien.Obtenir le nom de tag de zone HTML de Javascript?

<script> 

function metoda(obiekt) 
{ 
    alert(obiekt.name); //Here I get undefined! 
} 

</script> 

<input type='text' value='kot' name='das' onclick='metoda(this);'></input> 
<map name='mapkama'> 
    <area 
     name='AE' 
     shape='POLY' 
     coords='285,87,287,90,288,87,285,87' 
     href='#' 
     title='' 
     onclick='metoda(this); return false;'> 
</map> 

<img usemap="#mapkama" src='http://myimage.com/image'> 

Comment afficher le nom de zone à partir de la fonction metoda?

+0

malheureusement, la zone ne peut pas être cliqué à moins d'avoir un élément visible. –

+0

@rob J'ai ajouté la partie avec élément visible, j'espère que cela vous aidera à m'aider;) –

Répondre

0

utilisant jquery vous pouvez y parvenir en

<script type="text/javascript"> 

function metoda(obiekt) 
{ 
    alert(obiekt.getAttribute("name")); 
} 

</script> 

<input type='text' value='kot' name='das' onclick='metoda(this);'></input> 

<img src="planets.gif" width="145" height="126" alt="Planets" usemap="#planetmap" /> 

<map name="planetmap"> 
    <area name='AE1' shape="rect" coords="0,0,82,126" href="#" alt="Sun" onclick='metoda(this); return false;'/> 
</map> 
+0

Je ne peux pas utiliser JQuery, seulement JS –

+1

salut J'ai édité ma réponse, 'obiekt.getAttribute (" name ")' devrait le faire. –

1

Le code ci-dessous me renvoie correctement la valeur du nom.

<script> 

function metoda(obiekt) 
{ 
    alert(obiekt.name); 
} 

</script> 

<input type='text' value='kot' name='das' onclick='metoda(this);'></input> 

<img src="planets.gif" width="145" height="126" alt="Planets" usemap="#planetmap" /> 

<map name="planetmap"> 
    <area name='AE1' shape="rect" coords="0,0,82,126" href="#" alt="Sun" onclick='metoda(this); return false;'/> 
</map> 

Seule différence, j'utilise une forme rectale alors que vous utilisez du poly. Pouvez-vous vérifier si l'utilisation rect ou cercle vous aider.

+0

cela renvoie encore undefined. –

+0

Vous voulez dire pour le rect, il retourne undefined? Une chose que j'ai remarquée, que les coordonnées de forme de poly doivent être propres afin d'obtenir des coordonnées de clic –

+0

@Sachin Shanbhag La même chose que pour rob-undefined. J'ai mis à jour mon code source sur le scénario réel que j'ai, donc vous serez capable de le reproduire facilement –

Questions connexes