Erreur Javascript

skyangel
Invité n'ayant pas de compte PHPfrance

19 juil. 2006, 14:31

Bonjour,

Je ne trouves pas l'erreur que mon navigateur me retourne. c a d ligne 361 caractère 620 ';' attendu.

Pourtant j'ai beau regarder partout je ne vois pas où il en manque.
J'ai pu isolé le code qui pose problème. Je vous poste la fonction entière mais les lignes posant le problèmes sont les lignes où on donne une valeur à la variable txt.

Code : Tout sélectionner

function popup_news(titre,texte,date,heure,categorie) { switch (categorie) { case "Compta": x=x; y=50; d=1; break; case "Informatique": x=x-300; y=50; d=0; break; case "Juridique": x=x; y=50; d=1; break; case "Social": x=x-200; y=50; d=0; break; default: d=1; break; } if (texte.search("href") != -1) { //on a un lien donc on affiche une popup qui se ferme avec le close. sw = 1; cnt = 0; snow = 0; txt = "<table width='450' border='0' cellpadding='"+border+"' cellspacing='0' bgcolor='"+backcolor+"'><tr><td><table width='100%' border='0' cellpadding='2' cellspacing='0' bgcolor='"+fcolor+"'><tr><td align='CENTER'><font face='Arial,Helvetica' color='"+textcolor+"' size='2'><b>"+titre+"</b></font></td></tr></table><table bgcolor='"+capcolor+"' width='100%' border='0' cellpadding='2' cellspacing='0' ><tr><td><div>"+texte+"</div></td></tr><tr><td><br></br></td></tr></table><table bgcolor='"+fcolor+"' width='100%' border='0' cellpadding='2' cellspacing='0' ><tr><td align='CENTER'><i> Le "+date+" à "+heure+"</i></td><td align='right'><a href='/' onmouseover='cClick();' id='PCL'><font color='#000000'>Fermer</font></a></td></tr></table>"; } else { txt = "<TABLE WIDTH=450 BORDER=0 CELLPADDING="+border+" CELLSPACING=0 BGCOLOR=\""+backcolor+"\"><TR><TD><TABLE WIDTH=100% BORDER=0 CELLPADDING=2 CELLSPACING=0 BGCOLOR=\""+fcolor+"\"><TR><TD ALIGN=\"CENTER\"><FONT FACE=\"Arial,Helvetica\" COLOR=\""+textcolor+"\" SIZE=\"2\"><b>"+titre+"</b></FONT></TD></TR></TABLE><table BGCOLOR=\""+capcolor+"\" WIDTH=100% BORDER=0 CELLPADDING=2 CELLSPACING=0 ><tr><td>"+texte+"</td></tr><tr><td><br></td></tr></TABLE><table BGCOLOR=\""+fcolor+"\" WIDTH=100% BORDER=0 CELLPADDING=2 CELLSPACING=0 ><tr><td align=\"CENTER\"><i> Le "+date+" à "+heure+"</i></td></tr></TABLE>"; } layerWrite(txt); dir = d; disp(); }
SI vous trouvez une erreur , pouvez vous me dire où elle se trouve.

Merci d'avance

skyangel
Invité n'ayant pas de compte PHPfrance

19 juil. 2006, 14:52

Je tiens à préciser que mon erreur est survenue lorsque j'ai changé mon doctype et que je me suis mis en xhtml strict.
J'ai tenté le transionnal mais pareil l'erreur est toujours là.

Cependant, avant que je fasse tout ces modif et que je n ajoutais pas doctype , le javascript en question fonctionne correctement.

J'ai tenté un retour en arrière en enlevant le doctype mais pas d'améliorations

Eléphanteau du PHP | 25 Messages

19 juil. 2006, 17:23

:?: C'est un peu bête comme question mais c'est quoi le but de ton script ? afficher une news dans une pop-up, c'est çà ?
Tell us ... :wink:

skyangel
Invité n'ayant pas de compte PHPfrance

20 juil. 2006, 08:37

non non c'est pas bête j'aurais du le préciser.

J'affiche une popup contenant une news interne à l'entreprise.

Voila


Merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

20 juil. 2006, 10:41

Je vois pas trop ce qui peut provoquer l'erreur j'avascript... essaye en découpant ta variable, ça sera plus lisible et ça te permettra peut être de mieux situer l'erreur
txt = "<table width='450' border='0' cellpadding='"+border+"' cellspacing='0' bgcolor='"+backcolor+"'>";
txt+= "	<tr>";
txt+= "		<td>";
txt+= "			<table width='100%' border='0' cellpadding='2' cellspacing='0' bgcolor='"+fcolor+"'>";
txt+= "				<tr>";
txt+= "					<td align='CENTER'>";
txt+= "						<font face='Arial,Helvetica' color='"+textcolor+"' size='2'><b>"+titre+"</b></font>";
txt+= "					</td>";
txt+= "				</tr>";
txt+= "			</table>";
txt+= "			<table bgcolor='"+capcolor+"' width='100%' border='0' cellpadding='2' cellspacing='0' >";
txt+= "				<tr>";
txt+= "					<td>";
txt+= "						<div>"+texte+"</div>";
txt+= "					</td>";
txt+= "				</tr>";
txt+= "				<tr>";
txt+= "					<td>";
txt+= "						<br></br>";
txt+= "					</td>";
txt+= "				</tr>";
txt+= "			</table>";
txt+= "			<table bgcolor='"+fcolor+"' width='100%' border='0' cellpadding='2' cellspacing='0' >";
txt+= "				<tr>";
txt+= "					<td align='CENTER'>";
txt+= "						<i> Le "+date+" à "+heure+"</i>";
txt+= "					</td>";
txt+= "					<td align='right'>";
txt+= "						<a href='/'  onmouseover='cClick();' id='PCL'><font color='#000000'>Fermer</font></a>";
txt+= "					</td>";
txt+= "				</tr>";
txt+= "			</table>"; 
Ca permet nottament de voir qu'il manque la fermeture d'un tableau, et je ne suis pas convaincu qu'en xhtml la balise <br> se ferme ainsi </br> vu qu'elle ne peut rien contenir.. essaye avec <br /> (ca changera probablement rien, m'enfin on sait jamais :))