11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Qui pourrait me dire pourquoi le validateur de W3C (http://validator.w3.org/ ) n'accepte pas pas une page contenant cette routine Javascript suivante (et qu'est-ce qu'il faut modifier pour qu'il l'accepte) :

<script type='text/javascript'>
function ecremail(domaine, util, nom)
{ monadr = "<a class='mail' href='&#109;&#97;&#105;&#108;&#116;&#111;&#58;" + util + "&#64;" + domaine + "' title='Mon adresse'>" + nom + "</a>";
document.write(monadr); }
</script>

Le validateur butte sur un problème de fermeture de lien </a> sans ouverture et je ne comprends pas pourquoi.

J'ai également essayé de faire un write direct sans passer par une variable intermédiaire : La variable c'était pour essayer de ruser


Merci par avance pour vos lumières sur ce sujet

Dandes
Modifié le 09 Jan 2005 - 20:11
Faudrait pas faire un escape de tout le code ? Donc mettre au début, juste après la balise <script> : <!--
Et juste avant la balise </script> : // -->
Sachant qu'entre les balises script, c'est du CDATA je crois bien (?), donc le validateur le parse comme si c'était du code html normal...
Après vérification, c'est bien ça. Le Validateur W3 ne supporte pas les scripts. Donc il regarde ce qu'il y a dans les balises script. Là il tombe sur un <a qui n'est pas terminé (il doit s'arrêter au premier '+', et penser que le <a> se termine), du coup il t'affiche l'erreur que tu as.

Donc faut mettre en commentaire l'intérieur du script, comme dit de cette façon :
<script type="text/javascript">
<!--

...

// -->
</script>
Bonsoir,

Merci d'avoir répondu aussi vite. C'est très sympa.
C'est exactement ça qu'il faut faire, j'avais complètement oublié.

Merci Beaucoup et bonne soirée

Cordialement

Dandes
Administrateur
Salut et bienvenue sur le forum.
Si ton problème est réglé, je t'invite à éditer le titre de ton sujet pour y ajouter un [Résolu], comme cela est spécifié dans les Règles du forum; cela facilitera beaucoup les recherches futures. Merci d'avance Smiley smile