Aller au contenu

Sujets conseillés

Posté

Bonjour,

J'ai besoin actuellement de récupérer le texte contenu dans un de mes liens, entre la balise <a [...]> et </a>.

Pour ceci, je souhaite utiliser javascript.

Il me semble que c'est avec nodevalue que je dois faire ça. Pourtant, javascript me met que la valeur du noeud est indéfinie! :unsure:

Voici le code de test que j'ai réalisé :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Javascript et nodes</title>
<script type="text/javascript">
function AfficherInfos(titre,attributs,valeur,type,nom,href){
document.getElementById("titre").innerHTML=titre;
document.getElementById("attributs").innerHTML=attributs;
document.getElementById("valeur").innerHTML=valeur;
document.getElementById("type").innerHTML=type;
document.getElementById("nom").innerHTML=nom;
document.getElementById("href").innerHTML=href;
}
</script>
</head>

<body>
<a href="#" title="Titre du lien" id="lien" onmouseover="AfficherInfos(this.title, this.attributes, this.nodevalue, this.nodetype, this.nodename, this.href);">Value du noeud</a>
</div>
<table>
<tr>
<td>Titre</td><td id="titre"></td>
</tr>
<tr>
<td>Attributs</td><td id="attributs"></td>
</tr>
<tr>
<td>Valeur</td><td id="valeur"></td>
</tr>
<tr>
<td>Type</td><td id="type"></td>
</tr>
<tr>
<td>Nom</td><td id="nom"></td>
</tr>
<tr>
<td>Href</td><td id="href"></td>
</tr>
</table>
</body>
</html>

Au survol du lien, je devrais obtenir un tableau rempli, avec toutes les valeurs...

Et pourtant :

Titre Titre du lien Celui-ci marche

Attributs [object NamedNodeMap] Celui-ci marche

Valeur undefined

Type undefined

Nom undefined

Href *********/test.html# Celui-ci marche

Mais pourquoi value, type et nom ne marchent-ils pas ?

Merci.

  • 1 month later...
Posté

Tout d'abord, en JavaScript, il faut respecter la casse ! Attention donc à taper "nodeValue", et non "nodevalue" :P

Ensuite, d'après mon expérience, la propriété "nodeValue" ne permet pas d'obtenir ce que tu désires : j'aurais plutôt utilisé "innerHTML"

Par rapport aux raisons de l'échec de la propriété "nodeValue", tu trouveras probablement des informations sur cette page : http://fr.selfhtml.org/javascript/objets/node.htm

Bonne journée :)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...