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 :

Erreur de validation W3C


Sujet :

HTML

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 5
    Points
    5
    Par défaut Erreur de validation W3C
    Bonjour je me tourne vers vous car j'ai un soucis sur un programme html incorporant du javascript afin de réaliser une calculatrice banale.

    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
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
     
     
      <head>
      <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    		<title> Ma calculatrice</title>
     
    		<script type="text/javascript">
                    
                    function resultat()
                    {
                    var x = 0;
                    x= eval(window.document.calculatrice.affiche.value);
                    window.document.calculatrice.affiche.value = x;
                    }
                    function ajouter (signe)
                    {
                    window.document.calculatrice.affiche.value =
                    window.document.calculatrice.affiche.value + signe;
                    }
                    
                    
       </script>
    		</head>
    			<body>
    			  <form name="calculatrice" action="javascript" method="post">
    		<table border="1">
     
     
    		<td> 	<input name="affiche" size="20" maxlength="20"/> </td>
     
     
    			</table>
    			<table border="1">
    	<tr>
    		<td> <input type="button" value="7" onClick="ajouter('7')"/> </td>
    		<td> <input type="button" value="8" onClick="ajouter('8')"/> </td>
    		<td> <input type="button" value="9" onClick="ajouter('9')"/> </td>
    		<td> <input type="button" value="+" onClick="ajouter('+')"/> </td>
    	</tr>
     
    	<tr>
    		<td> <input type="button" value="4" onClick="ajouter('4')"/> </td>
    		<td> <input type="button" value="5" onClick="ajouter('5')"/> </td>
    		<td> <input type="button" value="6" onClick="ajouter('6')"/> </td>
    		<td> <input type="button" value="-" onClick="ajouter('-')"/> </td>
    	</tr>
    	<tr>
    		<td> <input type="button" value="1" onClick="ajouter('1')"/> </td>
    		<td> <input type="button" value="2" onClick="ajouter('2')"/> </td>
    		<td> <input type="button" value="3" onClick="ajouter('3')"/> </td>
    		<td> <input type="button" value="*" onClick="ajouter('*')"/> </td>
     
    	</tr>
    	<tr>
    		<td> <input type="button" value="=" onClick="resultat()"/> </td>
    		<td> <input type="button" value="0" onClick="ajouter('0')"/> </td>
    		<td> <input type="button" value="/" onClick="ajouter('/')"/> </td>
    	</tr>
    	<tr>
    		<td> <input type="reset" value="C"/> </td>
     
    		</tr>
     
     
     
    			</form>
    			</table>
    			</body>
     
      </html>
    Impossible de le valider au W3C il me trouve des erreurs que je n'arrive pas à comprendre comme. Line 29, Column 17: there is no attribute "name"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name="calculatrice" action="javascript" method="post">
    ou le " devant le calculatrice et en erreur.


    Ainsi que les > de table form quand je veux fermer les balises.

    Je suis dans l'impasse :/

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par Aromatic Voir le message
    Impossible de le valider au W3C il me trouve des erreurs que je n'arrive pas à comprendre comme. Line 29, Column 17: there is no attribute "name"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name="calculatrice" action="javascript" method="post">
    ou le " devant le calculatrice et en erreur.
    Bah euh... C'est de l'anglais, quoi
    "Il n'existe pas d'attribut "name"." Du coup il vaudrait mieux éviter d'utiliser un attribut qui n'existe pas, si tu veux que ça valide.


    Citation Envoyé par Aromatic Voir le message
    Ainsi que les > de table form quand je veux fermer les balises.
    Il faut fermer les balises dans l'ordre inverse que tu les as ouvertes.
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <body>
      <p>
      </p>
    </body>
    et non pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <body>
    <p>
    </body>
    </p>
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    x= eval(window.document.calculatrice.affiche.value);
    Oh non !

    Il existe des façons plus propres que d'utiliser eval()...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 5
    Points
    5
    Par défaut
    Ok je viens de voir mon erreur sur la fermeture des balises. Du coup je suis passé de 9 à 4 erreurs sur le W3C.

    Par contre je ne vois pas ce que je pourrais mettre à la place du x=eval.


    J'ai corrigé l'attribut name qui était incorrect également


    Merci

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Par contre je ne vois pas ce que je pourrais mettre à la place du x=eval.
    De la programmation !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 5
    Points
    5
    Par défaut
    J'ai trouvé pour arranger avec de la programmation. Il me reste encore 1 erreur sur mon code. Au niveau de la ligne 33 il me met en erreur le">" de la balise td en me disant document type does not allow element "td" here

    Mais sauf si je me trompe les balises td servent à définir des cellules dans un tableau.

    La ligne d'affichage des chiffres est considéré comme une cellule pourtant.

  7. #7
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Mais sauf si je me trompe les balises td servent à définir des cellules dans un tableau.
    Oui, et les cellules de tableau doivent se trouver dans des lignes de tableau, aussi appelées table row...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 5
    Points
    5
    Par défaut
    Effectivement je n'avais pas incorporer ma balise td dans ma balise table et tr. Forcément après cela marche mieux

    Une dernière question si je peux . Lors de l'utilisation du onClick sur ma ligne 39 , il me trouve toujours une erreur après le signe =. Le soucis c'est que je ne dois pas me servir des css pour faire tourner le programme.

    Et le W3C ne me trouve cette erreur que sur cette ligne alors que le onClick je m'en sert sur toutes les lignes qui suivent

  9. #9
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Le soucis c'est que je ne dois pas me servir des css pour faire tourner le programme.
    Quel rapport entre onclick et les CSS ?

    Sinon, en xhtml, les attributs doivent être en minuscules.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  10. #10
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    onclick, comme tous les éléments et tous les attributs d'ailleurs, est entièrement en minuscules.
    Il faut que tu saches, que le XHTML n'est plus très à la mode, aujourd'hui on ferait plutôt du HTML5... où onclick est supposé être en minuscules aussi, mais HTML5 n'est pas sensible à la casse.
    L'intérêt de XHTML, c'est si par exemple ton document doit pouvoir servir de document de données facile à parser avec un parseur XML. Là ça a pas trop l'air d'être le cas.

    Citation Envoyé par Aromatic Voir le message
    Le soucis c'est que je ne dois pas me servir des css pour faire tourner le programme.
    Il n'y a aucun rapport entre CSS et évènements onclick ou similaires -_-°.

    Citation Envoyé par Aromatic Voir le message
    Et le W3C ne me trouve cette erreur que sur cette ligne alors que le onClick je m'en sert sur toutes les lignes qui suivent
    Le validateur fait un effort pour ne pas rapporter plusieurs fois la même erreur.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  11. #11
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Pas tout à fait thelvin. HTML5 accepte aussi bien la notation HTML que xhtml, ce qui signifie que tu as le droit d'écrire les attributs et les balises avec la casse (ou combinaison de casse) que tu veux puisque c'est autorisé en HTML. De même, l'omission de fermeture de balise est autorisé pour certaines balises et autres joyeusetés de ce genre.
    Ceci dit, la grande majorité des développeurs Web, à ma connaissance, utilisent la notation xhtml plus stricte mais plus cohérente.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  12. #12
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 5
    Points
    5
    Par défaut
    Car dans le cours que je suis le prof nous a dit que l'attribut onClick était délicat à utilisé sans le css et que des fois cela posait problème.

    En relisant mon cours il n'est précisé nulle part qu'en Xhtml les attributs ou autre sont en minuscule. Sur la seule page d'attribut que j'ai les onload, unload, onclick, onchange, onblur etc sont tous en majuscules d'où mon/mes erreurs.

    Je commence cette formation depuis Octobre donc le prof veut que nous fassions et restions uniquement en Xhtml pour le moment.

    Je suis sur des exercices de type Cv, Tableau de formulaires avec lien navigateur et choix navigateur dedans calculatrice etc pour le moment. D'où le fait peut être de rester en Xhtml.

  13. #13
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    C'est bien dommage pour toi car ton prof semble ne pas avoir su évoluer avec le langage...
    L'usage des majuscules dans les attributs d'événements, ça ne se fait plus depuis belle lurette même si pas mal de documentation ancienne y fait référence.
    De même pour le doctype, comme indiqué par thelvin, rien ne justifie actuellement d'utiliser autre chose que le doctype HTML5, notamment parce que c'est le plus simple à écrire.
    En revanche, ton histoire d'événements et de CSS, c'est juste n'importe quoi (sauf pour des éléments vides qui n'ont du coup pas de dimension ce qui rend compliqué de cliquer dessus)... CSS ne peut en rien gêner le fonctionnement de JavaScript...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  14. #14
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 5
    Points
    5
    Par défaut
    D'où le fait de me dire que j'ai bien fait de m'inscrire sur ce forum car en gros j'aurais pu passer 1 semaine à essayer de trouver l'erreur sur la ligne onclick...

    Merci à vous deux en tout cas!!!!

  15. #15
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 5
    Points
    5
    Par défaut
    Bonsoir je reviens une dernière fois vers vous. J'ai bien transmis mon programme au prof pour la calculatrice. Programme ok sur le W3C et calculatrice qui marche. Sauf que il me manque un mécanisme de protection pour la division par 0

    Je voulais savoir si je l'inclus dans le programme javascript ou si je peux le rajouter dans le body du programme?


    Merci

Discussions similaires

  1. [W3C] [W3C] Une seule erreur pour validation W3C !?
    Par bond70 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 06/02/2009, 08h58
  2. [HTML] Correction des erreurs de validation W3C
    Par jlb59 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 15
    Dernier message: 24/02/2008, 09h50
  3. [XHTML 1.1] Erreurs de validation W3C
    Par schats dans le forum Balisage (X)HTML et validation W3C
    Réponses: 43
    Dernier message: 17/07/2007, 20h59
  4. [W3C] Comment résoudre ces erreurs de validation w3c ?
    Par Gaël81 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 29/06/2007, 20h25
  5. [W3C] erreur de validation W3C HTML 4.01 Transitional
    Par durand2504 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 14/03/2006, 10h47

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