OVH Cloud OVH Cloud

innerHTML marche pas

4 réponses
Avatar
dark poulpo
bonjour,

voila, je voudrais savoir pourquoi ca marche pas, c exclusivement sur ie,
quand je clique sur le mot legende ca n'affiche pas 14

<table width="100%" border="0" summary="">
<tr bgcolor="#9999CC">
<div align="center"><a href="#"
onclick="document.all.legende.innerHTML='14';"><b>Légende</b></a></div>
</tr>
<div id="legende"></div>
</table>

merci d'avance

4 réponses

Avatar
Thibaut Allender
<div align="center"><a href="#"
onclick="document.all.legende.innerHTML='14';"><b>Légende</b></a></div>
</tr>
<div id="legende"></div>
</table>


utilise plutot document.getElementById('legende').innerHTML
ca aura egalement l'avantage de fonctionne ailleurs que dans IE

PS : Stephane, je sais, ca ne fonctionne pas sous netscape 4 :)

--
thibaut allender | freelance | http://capsule.org

Avatar
dark poulpo
"Thibaut Allender"
a écrit dans
le message de news:
<div align="center"><a href="#"
onclick="document.all.legende.innerHTML='14';"><b>Légende</b></a></div>
</tr>
<div id="legende"></div>
</table>


utilise plutot document.getElementById('legende').innerHTML
ca aura egalement l'avantage de fonctionne ailleurs que dans IE


merci, mais ca marche pas,
(document.all me suffit par contre parceque c "exclusivement" sur ie que jen
ai besoin)
par contre il semble que des que <tr> soit inclu on peut plus ecrire dans un
<div>


Avatar
YD

<div align="center"><a href="#"
onclick="document.all.legende.innerHTML='14';"><b>Légende</b></a></div>
</tr>
<div id="legende"></div>
</table>




Ne marche pas : le <a> provoque un rafraîchissement de la page.

Syntaxe correcte :
<a href="#"
onclick="document.getElementById('legende').innerHTML='14'; return false;"><b>Légende</b></a>

--
Y.D.



Avatar
L'ermite
A vue de nez (because la flemme de tester), il manque juste la balise <td>:

<table width="100%" border="0" summary="">
<tr bgcolor="#9999CC">
<td>
<div align="center"><a href="#"
onclick="document.all.legende.innerHTML='14';"><b>Légende</b></a></div>
</td>
</tr>
<div id="legende"></div>
</table>

mais un document.getElementById('legende') serait bien plus "propre" et tout
aussi efficace que ton document.all.legende, à moins que ton but soit vraiment
de faire une page qui foire systématiquement sur tous les navigateurs autres qu'IE.

Dans la même lignée, plutôt que de coller un onclick sur un lien bidon ("#"), il
serait préférable d'utiliser directement la cible du lien:

<a href="Javascript:document.getElementById('legende').innerHTML='14';">

--
L'ermite