IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HTML Discussion :

[W3C] Pb validation XHTML et javascript


Sujet :

HTML

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 33
    Points : 30
    Points
    30
    Par défaut [W3C] Pb validation XHTML et javascript
    Bonjour à tous !

    j'ai un petit soucis d'intégration de code javascript au sein de ma page. Non pas que celà ne fonctionne pas, bien au contraire, mais plutôt du fait que notre bon vieux validateur du W3C ne me pardonne pas certaines largesses.

    Pour vous expliquer clairement la chose, je dois vous dire que j'utilise deux listes déroulantes, le contenu de la seconde étant directement lié au contenu de la première.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <select name="id_agence" onchange='javascript:change_liste(this.name, this.value)' id="id_agence"> 
    	<script type="text/javascript"> 
                    var val="";
                    for (i=0; i<agence.length; i++){ 
                            s="";
                            if(val==agence[i][0])
                                    s=" selected";
                                    document.write("<option value=\"" +agence[i][0]+ "\""+s+">" +agence[i][1]+"</option>");
                    }
            </script>
    </select>
    Je ne retranscris ici que le code de la première liste déroulante, car la syntaxe de la seconde est quasi identique.

    Pour info, les contenus des 2 listes sont gérés dans des tableaux dans une balise script contenu dans le <head>.

    j'ai cru lire qu'il fallait encapsuler mes scripts dans des balises <![CDATA[ et ]]> mais le résultat n'a pas franchement été meilleur.

    Autre info, je n'ai pas spécifié de ligne en rapport avec le xml près de mon doctype... j'ai donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     <html>
    ...
    Enfin, et pour finir, voilà quelques erreurs que le validateur m'affiche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    Error  Line 66 column 37: document type does not allow element "script" here.
     
    							<script type="text/javascript">
     
    Error  Line 68 column 33: character ";" not allowed in attribute specification list.
     
    								for (i=0; i<agence.length; i++){ 
     
    Error  Line 68 column 33: element "agence.length" undefined.
     
    								for (i=0; i<agence.length; i++){ 
     
    Error  Line 73 column 39: an attribute value must be a literal unless it contains only name characters.
     
    									document.write("<option value=\"" +agence[i][0]+ "\""+s+">" +agence[i][
     
    ...............
    Voilà, je pense avoir résumé au mieux mon problème. En esperant l'aide d'une âme charitable, je vous souhaite à tous une excellente fin d'après-midi.
    Jérôme

  2. #2
    Membre averti

    Inscrit en
    Octobre 2004
    Messages
    363
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 363
    Points : 417
    Points
    417
    Par défaut
    c'est et

    qu'il faut mettre pour englober tes balises script.
    et mettre ca dans le head ou body sinon il y a erreur

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 33
    Points : 30
    Points
    30
    Par défaut
    Tout d'abord merci 10-nice pour avoir pris le temps de lire ma prose.
    Le fait d'ajouter ces balises a en effet réduit le nombre d'erreurs lors de la validation. Cependant, il n'aime pas bien que j'intègre des balises <script> au sein de balises <select>... comment puis-je passer outre cette interdiction ?

    voici le code HTML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <select name="id_agence" onchange='javascript:change_liste(this.name, this.value)' id="id_agence"> 
    	<script type="text/javascript">
                    //<![CDATA[
                            var val="ILVERTE";
                            for (i=0; i<agence.length; i++){ 
                                    s="";
                                    if(val==agence[i][0])
                                            s=" selected";
     
                                    document.write("<option value=\"" +agence[i][0]+ "\""+s+">" +agence[i][1]+"</option>");
                            }
                    //]]>
            </script>
    </select>
    et au niveau du validateur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Error  Line 68 column 37: document type does not allow element "script" here.
     
    							<script type="text/javascript">
     
    Error  Line 80 column 14: end tag for "select" which is not finished.
     
    						</select>
    Merci d'avance !

  4. #4
    Membre averti

    Inscrit en
    Octobre 2004
    Messages
    363
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 363
    Points : 417
    Points
    417
    Par défaut
    il te faut mettre tes balises script en dehors des balises select, les balise select n'admettent que des balises input à l'interieur.

Discussions similaires

  1. [XHTML 1.0] Pb W3C Validator XHTML et JavaScript
    Par fagma dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 10/05/2009, 21h24
  2. [W3C] Problème de validation XHTML 1.0 strict
    Par Cedrun dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 12/09/2006, 11h53
  3. [W3C] [Debutant] valid. code xhtml et attributs width et align
    Par Marc_3 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 08/04/2005, 07h36
  4. [W3C] probleme validation XHTML
    Par tus01 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 06/11/2004, 18h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo