valeurs undefined ???
Le
unbewusst.sein

Mon html :
<div id="item">
<h1 class="item"><a id="link" href="http://mail.google.com/">Google
Mail Yvon</a></h1>
<dl class="item">
<dt>Login :</dt>
<dd id="login">yvon.thoraval@gmail.com</dd>
<dt>Password :</dt>
<dd id="pass">monpassultrasecret</dd>
<dt>Notes :</dt>
<dd id="infos">Verification code: monpassultrasecretcrypté changé
pwd le 18 10 2010</dd>
</dl>
</div>
de manière à pouvoir modifier les valeurs, je dois d'abord les lire puis
les ajouter dans une form ; pour les lire je fais :
var title=document.getElementById("link").text;
var link=document.getElementById("link").getAttribute('href');
var login=document.getElementById("login").text;
var pass=document.getElementById("pass").text;
var infos=document.getElementById("infos").text;
je n'obtiens que les deux premières valeurs, celles qui manquent sont
celles qui sont dans un tag <dd />; ca voudrait dire qu'on a pas le
droit de mettre un id dans un dd ???
je ne vois pas pourquoi
peut etre est-ce un bug de TenFourFoxG3 ???
je vérifie avec safari derechef.
--
« Ce n'est pas l'argent qui n'a pas d'odeur mais les banquiers
qui n'ont pas d'odorat. »
(Anonyme)
<div id="item">
<h1 class="item"><a id="link" href="http://mail.google.com/">Google
Mail Yvon</a></h1>
<dl class="item">
<dt>Login :</dt>
<dd id="login">yvon.thoraval@gmail.com</dd>
<dt>Password :</dt>
<dd id="pass">monpassultrasecret</dd>
<dt>Notes :</dt>
<dd id="infos">Verification code: monpassultrasecretcrypté changé
pwd le 18 10 2010</dd>
</dl>
</div>
de manière à pouvoir modifier les valeurs, je dois d'abord les lire puis
les ajouter dans une form ; pour les lire je fais :
var title=document.getElementById("link").text;
var link=document.getElementById("link").getAttribute('href');
var login=document.getElementById("login").text;
var pass=document.getElementById("pass").text;
var infos=document.getElementById("infos").text;
je n'obtiens que les deux premières valeurs, celles qui manquent sont
celles qui sont dans un tag <dd />; ca voudrait dire qu'on a pas le
droit de mettre un id dans un dd ???
je ne vois pas pourquoi
peut etre est-ce un bug de TenFourFoxG3 ???
je vérifie avec safari derechef.
--
« Ce n'est pas l'argent qui n'a pas d'odeur mais les banquiers
qui n'ont pas d'odorat. »
(Anonyme)
exactement le ,ême résultat...
je précise qu'à la console, pas d'erreur, d'ailleurs le script qui ne
fini pas là; continue avec succès son job...
--
« Ce n'est pas l'argent qui n'a pas d'odeur mais les banquiers
qui n'ont pas d'odorat. »
(Anonyme)
Pas de problème pour mettre un ID.
C'est vrai pour tout élément HTML.
Mais là, pas d'accord !
D'où sors-tu cette propriété "text" ?
Pour moi, elle n'est implémentée qu'en HTML5, pour les liens et ancres
seulement. Tu as une autre info là-dessus ?
Si l'erreur est confirmée, il te reste deux solutions pour obtenir ta
valeur :
- La propriété quasi-standard "innerHTML" (je ne connais pas de
navigateur qui ne l'implémente pas).
- La propriété "data" du noeud texte enfant, ce qui suppose d'aller
d'abord chercher ce descendant.
--
Cordialement,
Pascal
il faut écrire :
var login=document.getElementById("login").textContent;
du coup, je ne pige pas pourquoi ca a marché pour :
var title=document.getElementById("link").text;
qui correspond au html :
Mail Yvon</a></h1>
--
« L'avantage de dire la vérité, c'est qu'on n'a pas à se rappeler
ce qu'on disait avant. »
(Quelqu'un...)
de ma mémoire qui foire )))
non; la par hasard ca a marche sur un lien, je suis en xhtml1-strict.dtd
mais bon je peux très bien passer en html5.
oui mais comme c'est du texte seul...
ah oui, mais je ne vois pas comment atteindre le noeud text d'une balise
du genre :
<tag id="monid">le texte désiré</tag>
mais bon Safari m'a aidé; car à la console quand j'ai entré :
document.getElementById("login").text
safari m'a suggéré :
document.getElementById("login").textContent
j'ai changé mon script accordingly et ca roule...
--
« L'avantage de dire la vérité, c'est qu'on n'a pas à se rappeler
ce qu'on disait avant. »
(Quelqu'un...)
Safari a raison, c'est l'équivalent normalisé du "innerText" de MSIE.
Du coup, ce dernier ne l'a implémenté que dans la version 9.
C'est pourquoi j'hésite encore à en conseiller l'emploi.
Mais j'ai cru comprendre que tu opérais uniquement sur Mac, non ?
Ce qui expliquerait cela ! ;-)
--
Cordialement,
Pascal
on s'demande pourquoi c'est pas directement dans ce form(ulaire)
mébon ...
non, c'est parce que tu emploies les choses un peu au hasard !
.text
ce n'est que pour le texte des options ou des liens
pour le reste, le contenu entre balises c'est :
.innerHTML
sauf pour textarea où ce sera value
(comme pour n'importe quel input de form, puisque le textarea est un
élément de form)
C'est donc un *gros* coup de bol que ça a eut eu fonctionné pour un des
trucs.
toujours croire que c'est un bug personnel ! !
et ... qu'en dit-il ?
Ha Ha ! Il est bien d'accord ! hé hé hé ;-)
Bien entendu, on se méfiera grandement de ce innerHTML :
--
Stéphane Moriaux avec/with iMac-intel
oui oui et c'est une page "interne" où je sauvegarde mes mots de passe
clés de logiciel etc
je précise que ca marche aussi bien avec Safari Version 4.1.3
(4533.19.4) (c'est vraiment une "vieille version") et TenFourFoxG3 :
hack d'un ff moderne pour un vieux PPC G3; je suis sous Mac OS X
10.3.11; Apache 2 PHP 5.3.6.
--
« Qui veut cherche un moyen.
Qui ne veut pas cherche une excuse. »
(Proverbe chinois)
Heu ... n'y comprenant rien, je ne lis pas les docs mais ....
.text
a fonctionné de tous temps pour les liens (même avec NC.3 sjnma)
NC.3, NC.4, par exemple ?
'lors là yapuka tirer l'échelle pour ces pôvres Netscapes ! ;-)
--
Stéphane Moriaux avec/with iMac-intel
c'est #textContent d'après Safary 4+ et TenFourFoxG3
j'essaierai après demain sur mon iMac donc avec des navigateurs +
modernes...
--
« Qui veut cherche un moyen.
Qui ne veut pas cherche une excuse. »
(Proverbe chinois)
textContent
a l'air de pas mal fonctionner
(je n'ai plus trop de vieux navigateur pour tester)
--
Stéphane Moriaux avec/with iMac-intel