Forum Clubic

Connaître le nom d'un lien en DOM

Bonjour,

Je voudrais savoir s’il est possible de connaître le nom d’un lien en DOM. Pour connaître le contenu d’un input type=text on fait this.form.nom_du_input.value mais pour un lien. Par exemple, pour un lien de type Le nom du lien, je voudrais pouvoir récupérer “le nom du lien”. Est-ce possible en DOM?

Merci d’avance.

Hum, je n’y connais pas grand chose en DOM en JS (si c’est bien de JS qu’on parle :s) mais tu peux utiliser la fonction getElementByTagName(‘tag’) qui de mémoire retourne un tableau indexés d’entiers à partir de 0 contenant les valeurs comprises entre le ‘tag’ passé en paramètre dans l’ordre d’apparition dans le code source.

Ou bien je dis nawak et oublis tout ce que je dis:pt1cable:
Edité le 09/04/2009 à 20:57

Ok je vais voir ça ! Je te remercie beaucoup !
Si d’autres ont des idées, je suis preneur aussi, il y a de toute façon sûrement plusieurs moyens de faire ça.

Le problème que tu vas rencontrer, c’est que ce que tu appelles “nom d’un lien”, c’est en fait le contenu de l’élément , qui n’est pas systématiquement un noeud de type text.

Du coup (testé sous firebug, d’où le console.log)

var links = document.getElementsByTagName('a');
for (var i = 0, l = links.length; i < l; ++i) {
  var childNodes = links[i].childNodes;
  for (var j = 0, m = childNodes.length; j < m; ++j) {
    console.log(childNodes[j]);
  }  
}

Tu n’auras pas forcément un seul noeud type texte. Reporte toi à ça par exemple pour plus d’info sur DOM :

developer.mozilla.org…

Effectivement, je n’avais pas pensé à cela ! Merci pour ton code et le lien, je vais me pencher là-dessus !

Autre solution qui requiert de poser un attribut id sur ton lien.


<a id="monLien" href="http://www.google.fr">Mon lien vers Google</a>
<input type="button" onclick="alert(document.getElementById('monLien').innerHTML)" value="Teste moi">

Edité le 10/04/2009 à 13:09