Erreur IE7 innerHTML javascript
Bonjour tout le monde !
Alors tout d'abord j'ai un probl�me qui n'appara�t que sur IE. En effet sur Firefox, pas de soucis.
Alors en fait, j'ai donc int�grer un composant calendrier dans ma page asp via le fichier gnoocalendar.js qui permet de cr�er des calendriers en javascript.
Sur Firefox, comme je l'ai dit, pas de soucis, je peux cliquer sur mon image qui m'affiche un beau calendrier g�n�r� dynamiquement via ce fichier javascript.
Alors le probl�me survient lors du clic sur mon image qui est cens� afficher le calendrier via la m�thode this.show().
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
/*
* GnooCalendar.show()
* affiche le calendrier
*/
this.show = function()
{
this.vis = true;
this.tag = "<form name='"+this.name+"_form' method='post'>\n";
this.tag += this.mList();
this.tag += "</form>\n";
if(document.layers)
{
with(document.layers[this.div])//
{
document.open("text/html");
document.write(this.tag);
document.close();
visibility='show';
document.getElementById(this.div).style.left = this.target.offsetWidth + this.GetLeft() + 'px';
document.getElementById(this.div).style.top = this.target.offsetHeight + this.GetTop() + 'px';
document.getElementById("framecalend").style.left = this.target.offsetWidth + this.GetLeft() + 'px';
document.getElementById("framecalend").style.top = this.target.offsetHeight + this.GetTop() + 'px';
document.getElementById("framecalend").style.visibility = 'visible';
}
}
else
{
document.getElementById(this.div).innerHTML = ""+this.tag;
document.getElementById(this.div).style.visibility = 'visible';
document.getElementById(this.div).style.display = 'block';
document.getElementById(this.div).style.left = this.target.offsetWidth + this.GetLeft() + 'px';
document.getElementById(this.div).style.top = this.target.offsetHeight + this.GetTop() + 'px';
document.getElementById("framecalend").style.left = this.target.offsetWidth + this.GetLeft() + 'px';
document.getElementById("framecalend").style.top = this.target.offsetHeight + this.GetTop() + 'px';
document.getElementById("framecalend").style.visibility = 'visible';
}
return;
} |
En d�buguant ce que j'ai pu via des alerts, j'ai remarqu� que l'erreur venait de la ligne du <form> et du </form>. Je les avais donc comment� afin de voir si �a venait bien de l� => Probl�me car lors du changement de mois ou d'ann�e, ouverture d'un nouveau calendrier, ce que je ne veux bien �videmment pas.
Si vous voulez voir � quoi ressemble le calendrier et le code associ� (le m�me que le mien finalement), vous tapez gnoocalendar sur google.
J'ai regard� sur le net et a priori, cela viendrait d'un probl�me entre les balises <form> et l'innerHTML apr�s.
Avez-vous d�j� rencontr� ce probl�me ? Avez-vous une solution ou une piste pour le corriger car l�, je commence � p�ter un cable ^^ !
Merci d'avance.