je la fonction suivante:solution de contournement innerhtml pour les éléments IE td?
<script type="text/javascript">
function changeText(elem){
var oldHTML = document.getElementById(elem).innerHTML;
var newHTML = "<span style='color:red'>" + oldHTML + "</span>";
document.getElementById(elem).innerHTML = newHTML;
}
</script>
Et le code HTML suivant:
<table>
<tr>
<td id = "foo">bar</td>
</tr>
</table>
Cela jette une "erreur d'exécution inconnue" (juste dans IE) qui googling a depuis m'a appris que les éléments de table sont en lecture seule dans IE avec innerHTML.
J'ai essayé de trouver des solutions de contournement, mais elles ne ciblent pas mon problème spécifique, qui est juste que je veux rendre le mot "barre" rouge. Je ne veux pas changer le mot «barre» pour autre chose. Purement un changement de couleur.
Existe-t-il un moyen de le faire sans une fonction DOM complexe et lente et sans avoir à modifier l'un des autres balises HTML sur la page? C'est une table avec un formulaire, et si l'internaute soumet le formulaire avec une erreur, les champs "erronés" devraient devenir rouges. Il doit être capable de s'exécuter plusieurs fois car il est possible qu'un internaute gâche plus d'un champ.
Merci pour tout conseil.
lol ... merci qui a fonctionné. Je n'avais vraiment aucune idée que ça pourrait être aussi simple .. – ihatejavascript