Bon le sujet est peut-être un peu vieux mais j'ai une solution. Il existe la propriété
innerHTML en lecture et en écriture dans tous les nœuds HTML, celle-ci contient le code HTML situé à l'intérieur de la balise représentée par le nœud manipulé.
Code : Tout sélectionner
var plop0 = document.getElementById("plop0");
var plop1 = document.getElementById("plop1");
plop0.innerHTML = "Coucou les gens";
plop1.innerHTML = "Coucou les autres gens";
Ce code là fonctionne très bien chez moi sur Safari 2 et Firefox 1.5 avec le contenu HTML suivant :
Code : Tout sélectionner
<p><span id="plop0">Plop</span></p>
<p><span id="plop1"></span></p>
<p><input type="button" onclick="EnterTextInPlopSpans()" value="Test"/></p>
J'utilise généralement la propriété
innerHTML pour manipuler ma page HTML car c'est très souvent plus simple que de manipuler l'arbre DOM.
Édition : PsyDk m'indique que si le document est servi correctement en XHTML (avec un type MIME application/xhtml+xml), alors cette technique ne fonctionne pas dans Firefox avant la version 1.5 et ne fonctionne pas du tout dans Safari.