Posez votre question Signaler

Javascript - IE8 : erreur avec innerHTML [Résolu]

Ju - Dernière réponse le 25 janv. 2010 à 14:45
Bonjour,
C'est peut-être une bricole, mais je vois pas :
J'ai une fonction javascript qui doit mettre à jour des paragraphes <p id='Reponse'> et <p id='Histo'> dans ma page :
function getReponse(TReponse, THisto)
{
    window.document.getElementById('Reponse').innerHTML = TReponse;
    
    window.document.getElementById('Histo').innerHTML = THisto;
	
	window.focus();
}

Sous Firefox, ça marche tout le temps.
Sous IE8, dans 70% des cas, j'ai une erreur : "erreur d'exécution inconnue ; code0", indiquant la ligne
window.document.getElementById('Histo').innerHTML = THisto;

Une idée d'où ça pourrait venir ? Sachant que si je remplace le innerHTML par un innerText, ça fonctionne tout le temps... Une erreur dans le formatage du texte à afficher pourrait-il être la cause de l'erreur ? J'ai pourtant revérifié le texte à afficher, il est correct (du texte, des <br/> des <hr/> et quelques <span>...
Lire la suite 

Javascript - IE8 : erreur avec innerHTML »

2 réponses
Réponse
+1
moins plus
Bon... ben apparement IE n'aime pas les <hr/>... en tout cas si je les enlève de mon texte, il arrête ses caprices... bizarre quand même.
Ajouter un commentaire
Réponse
+0
moins plus
C'est pas une question pour IE d'aimer ou de ne pas aimer les <hr/>(je n'ai pas laissé d'espace avant le slash pour ne pas risquer de provoquer une erreur).
Le tout est de savoir comment les données sont transmises à la variable THisto, si la syntaxe est bien respectée?

IE est plus strict que FF dans bien des cas!
Ajouter un commentaire
Ce document intitulé « Javascript - IE8 : erreur avec innerHTML » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?