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 :

Pb W3C Validator XHTML et JavaScript [XHTML 1.0]


Sujet :

HTML

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 26
    Par défaut Pb W3C Validator XHTML et JavaScript
    Je développe en PHP 5.
    Lorsque je veux faire la validation W3C de mes pages XHTML 1.0 Strict, je vois que je n'ai pas le droit d'insérer du JavaScript au milieu de ma page, donc je devrais le mettre sur un fichier .js .
    Mais si je fais une boucle en PHP, à l'intérieur de laquelle j'entre une valeur dans une variable, je suis bien obligé de "mélanger" le PHP et le JS !
    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for ($i = 0; $i < 100; $i++) {
        echo '<script type="text/javascript">
                <!--
                tableauJS['.$i.'] = '.$tableauPHP[$i].';
        //-->
    </script>';
    }
    Comment puis-je faire pour valider ça ?
    Merci !

  2. #2
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Par défaut
    Bonjour,

    Citation Envoyé par fagma Voir le message
    Lorsque je veux faire la validation W3C de mes pages XHTML 1.0 Strict, je vois que je n'ai pas le droit d'insérer du JavaScript au milieu de ma page
    Non, l'insertion d'un script au milieu de la page ne pose aucun problème de syntaxe, il suffit d'indiquer un <![CDATA[ :

    Code xhtml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <script type="text/javascript">
    //<![CDATA[
     
    function truc() {
    bla
    //]]>
    </script>

    Le parser n'interprète pas le code entre <![CDATA[ et ]]>.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 26
    Par défaut
    Que je mette
    //<![CDATA[ ... //]]>
    ou
    <!-- ... //-->

    le W3C validator me dit:

    Line 100, Column 69: document type does not allow element "script" here

    …id="bodyTableau"><script type="text/javascript">



    The element named above was found in a context where it is not allowed. This could mean that you have incorrectly nested elements -- such as a "style" element in the "body" section instead of inside "head" -- or two elements that overlap (which is not allowed).

    One common cause for this error is the use of XHTML syntax in HTML documents. Due to HTML's rules of implicitly closed elements, this error can create cascading effects. For instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section of a HTML document may cause the parser to infer the end of the "head" section and the beginning of the "body" section (where "link" and "meta" are not allowed; hence the reported error).


    Ca ne lui plait pas !

    Et l'erreur précédente est :
    document type does not allow element "tbody" here
    Ca a peut être un rapport ?

  4. #4
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Par défaut
    Citation Envoyé par fagma Voir le message
    …id="bodyTableau"><script type="text/javascript">
    bodyTableau c'est un table ? tr ? td ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 26
    Par défaut
    C'est un <tbody> dans <table>, mais fais pas attention, ça peut pas être ça l'erreur.
    Comme tu peux voir plus haut, le validator dit qu'il m'oblige à mettre <script type="text/javascript"> dans la <head>.
    Il refuse que je le mette dans le <body>.

  6. #6
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Par défaut
    Citation Envoyé par fagma Voir le message
    C'est un <tbody> dans <table>, mais fais pas attention, ça peut pas être ça l'erreur.
    Beh si ...
    <tbody> ne peut contenir que <tr> comme enfant directe

    Attention à la structure de ton tableau :

    Code xhtml : 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
    19
    20
    21
    22
    23
    24
    25
    26
     
    <table>
    	<thead>
    		<tr>
    			<td>...</td>
    		</tr>
    	</thead>
    	<tfoot>
    		<tr>
    			<td>...</td>
    		</tr>
    	</tfoot>
    	<tbody>
    		<tr>
    			<td>
    				<script type="text/javascript">
                                            //<![CDATA[
                                             
                                            function truc() {
                                            bla
                                            //]]>
                                    </script>
    			</td>
    		</tr>
    	</tbody>
    </table>

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 26
    Par défaut
    Impeccable ! T'avais raison !
    Je savais que, entre <tbody> et <tr>, on ne peut pas mettre du texte, par exemple. Mais je pensais qu'on avais le droit de mettre du JS, puisqu'il fait rien de visible. Il met juste une valeur dans une variable !
    Merci, Macmillenium !

  8. #8
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Par défaut
    Citation Envoyé par fagma Voir le message
    Mais je pensais qu'on avais le droit de mettre du JS, puisqu'il fait rien de visible. Il met juste une valeur dans une variable !
    Oui mais <script> est un élément HTML comme les autres

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [W3C] Validation XHTML impossible
    Par madmax54 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 22/11/2008, 16h31
  2. [W3C] Pb validation XHTML et javascript
    Par jerome38000 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 15/12/2005, 14h16
  3. [W3C] validation WC3 HTML ou XHTML
    Par FoxLeRenard dans le forum Balisage (X)HTML et validation W3C
    Réponses: 12
    Dernier message: 14/12/2005, 18h57
  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