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

Discussion :

Html - Question d'une novice :)

  1. #1
    Invité de passage
    Femme Profil pro
    Technicien Help Desk
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Par défaut Html - Question d'une novice :)
    Bonjour,

    Tout d'abord, je m'excuse si ce post ne se trouve pas au bon endroit mais je n'ai pas trouvé de rubrique consacré à l'Html
    J'ai commencé sur le site Udemy une formation en développement Web.
    Lors d'un cours sur les formulaires en html, le but était qu'une case se coche seul.
    Voici le code proposé

    Code html : 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
    <!DOCTYPE html>
    <html>
        <head>
            <title>Titre de notre page</title>
        </head>
        <body>
          <form>
            <input type = "checkbox" value="velo">Velo
            <br>
            <input type = "checkbox" value="voiture" checked>voiture
            <br>
            <input type = "checkbox" value="avion">avion
            <br>
          </form>
     
        </body>
    </html>

    ---------------------------------------------------

    Si j'ajoute un tag <label>, cela fonctionne

    ----------------------------------------------------

    Code html : 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
    <!DOCTYPE html>
    <html>
        <head>
            <title>Titre de notre page</title>
        </head>
        <body>
          <form>
            <input type = "checkbox" value="velo">Velo
            <br>
            <label>
            <input type = "checkbox" value="voiture" checked>voiture
            </label>
            <br>
            <input type = "checkbox" value="avion">avion
            <br>
          </form>
     
        </body>
    </html>
    ----------------------------------------------------------------------------
    Vu que la vidéo de formation date d'il y a quelques année, le premier code ne serait plus applicable ?

  2. #2
    Membre chevronné
    Homme Profil pro
    web a11y
    Inscrit en
    Avril 2014
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : web a11y
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2014
    Messages : 200
    Par défaut
    Bonjour,

    connais-tu le MDN (Mozilla Developper Network) ? C'est une mise d'informations. Tu y trouveras des informations sur quasi tout le web (front-end), en particulier les input, checkbox, label, et bien d'autres encore (et avec des exemples)…

    Bonnes découvertes.

  3. #3
    Invité de passage
    Femme Profil pro
    Technicien Help Desk
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Par défaut
    Citation Envoyé par Stellar7 Voir le message
    Bonjour,

    connais-tu le MDN (Mozilla Developper Network) ? C'est une mise d'informations. Tu y trouveras des informations sur quasi tout le web (front-end), en particulier les input, checkbox, label, et bien d'autres encore (et avec des exemples)…

    Bonnes découvertes.
    Je ne connaissais pas, C'est pépite

  4. #4
    Invité de passage
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2013
    Messages : 111
    Par défaut
    Bonjour, les deux codes sont valide, tu peux le vérifier grâce au validateur du W3C => https://validator.w3.org

    Le checkbox est coché grâce à l'attribut checked dans les deux codes.

    Le fait d'indiqué un label permet de lier le texte aux champs et de ce fait quand on clique sur le texte, le checkbox réagit.
    Il est recommander de toujours indiquer des label.
    Règle n° 69 opquast Chaque champ de formulaire est associé dans le code source à une étiquette qui lui est propre

    PS : Pour que le formulaire soit fonctionnelle (c'est à dire capable d'envoyer la valeur dans une variable coté serveur), il manque l'identification de cette variable. Cela ce fait via l'attribut name de la balise input.

  5. #5
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 617
    Par défaut
    Bonjour,

    Citation Envoyé par sunshine13 Voir le message
    J'ai commencé sur le site Udemy une formation en développement Web.
    Lors d'un cours sur les formulaires en html, le but était qu'une case se coche seul.
    Ce n'est pas très clair. Est-ce que tu souhaites qu'une case se coche toute seule lorsque l'on clique à proximité (sur le libellé qui lui est associé) ou souhaites-tu faire en sorte qu'une seule case parmi n soit toujours cochée dans ton formulaire ?

    • Dans le second cas, ce sont en fait des boutons radio qu'il te faut (c'est à cela qu'ils servent) : https://developer.mozilla.org/fr/doc...ts/input/radio
    • Dans le premier, on fait effectivement cela avec des éléments LABEL. Il y a deux manière de les utiliser : de façon implicite ou de façon explicite.


    Lorsqu'utilisée de manière implicite, on inclut la case à cocher INPUT dans le corps de la balise LABEL, en même temps que le texte qui l'accompagne. Il est alors évident que les éléments sont liés entre eux et le mécanisme fonctionne.

    Lorsqu'utilisée de manière explicite, on sépare les balises INPUT et LABEL, on donne un identifiant à la balise INPUT avec id="" et on indique au LABEL que c'est à cette case que l'étiquette est associée en passant le même identifiant à l'attribut for="" de la balise LABEL.

    C'est la méthode explicite qui est recommandée et la plus propre parce que, sémantiquement, le corps de la balise LABEL ne contient que le libellé lui-même (le texte de l'étiquette). Il peut être récupéré facilement par analyse du document (spécialement dans le cas du XHTML) ou par le Javascript, qui peut même le remplacer sans risquer d'écraser la case à cocher en même temps. C'est aussi utile, voire nécessaire, lorsque ces éléments prennent place au sein d'un tableau TABLE et que chacun d'eux doit se trouver dans une cellule TD propre.

    En revanche, cela oblige à identifier toutes les cases, ce qui peut être fastidieux si elles sont nombreuses et spécialement si le formulaire est auto-généré (soit par le serveur, soit par le Javascript). Cela dit, il est déjà nécessaire de donner un nom name="" à chaque case. Donc…

  6. #6
    Invité de passage
    Femme Profil pro
    Technicien Help Desk
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Par défaut
    Citation Envoyé par casperweb Voir le message
    Bonjour, les deux codes sont valide, tu peux le vérifier grâce au validateur du W3C => https://validator.w3.org

    Le checkbox est coché grâce à l'attribut checked dans les deux codes.

    Le fait d'indiqué un label permet de lier le texte aux champs et de ce fait quand on clique sur le texte, le checkbox réagit.
    Il est recommander de toujours indiquer des label.
    Règle n° 69 opquast Chaque champ de formulaire est associé dans le code source à une étiquette qui lui est propre

    PS : Pour que le formulaire soit fonctionnelle (c'est à dire capable d'envoyer la valeur dans une variable coté serveur), il manque l'identification de cette variable. Cela ce fait via l'attribut name de la balise input.
    Merci pour les informations

  7. #7
    Invité de passage
    Femme Profil pro
    Technicien Help Desk
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Par défaut
    Citation Envoyé par Obsidian Voir le message
    Bonjour,



    Ce n'est pas très clair. Est-ce que tu souhaites qu'une case se coche toute seule lorsque l'on clique à proximité (sur le libellé qui lui est associé) ou souhaites-tu faire en sorte qu'une seule case parmi n soit toujours cochée dans ton formulaire ?

    • Dans le second cas, ce sont en fait des boutons radio qu'il te faut (c'est à cela qu'ils servent) : https://developer.mozilla.org/fr/doc...ts/input/radio
    • Dans le premier, on fait effectivement cela avec des éléments LABEL. Il y a deux manière de les utiliser : de façon implicite ou de façon explicite.


    Lorsqu'utilisée de manière implicite, on inclut la case à cocher INPUT dans le corps de la balise LABEL, en même temps que le texte qui l'accompagne. Il est alors évident que les éléments sont liés entre eux et le mécanisme fonctionne.

    Lorsqu'utilisée de manière explicite, on sépare les balises INPUT et LABEL, on donne un identifiant à la balise INPUT avec id="" et on indique au LABEL que c'est à cette case que l'étiquette est associée en passant le même identifiant à l'attribut for="" de la balise LABEL.

    C'est la méthode explicite qui est recommandée et la plus propre parce que, sémantiquement, le corps de la balise LABEL ne contient que le libellé lui-même (le texte de l'étiquette). Il peut être récupéré facilement par analyse du document (spécialement dans le cas du XHTML) ou par le Javascript, qui peut même le remplacer sans risquer d'écraser la case à cocher en même temps. C'est aussi utile, voire nécessaire, lorsque ces éléments prennent place au sein d'un tableau TABLE et que chacun d'eux doit se trouver dans une cellule TD propre.

    En revanche, cela oblige à identifier toutes les cases, ce qui peut être fastidieux si elles sont nombreuses et spécialement si le formulaire est auto-généré (soit par le serveur, soit par le Javascript). Cela dit, il est déjà nécessaire de donner un nom name="" à chaque case. Donc…
    Merci pour les informations le but ici était que la case soit cochée par défaut et, effectivement, j'ai vu le RADIO dans le cours suivant.
    Je garde bien précieusement toute les explications fournie dans les différentes réponse.

Discussions similaires

  1. Petite question pour une novice.
    Par buzye dans le forum SQLite
    Réponses: 2
    Dernier message: 20/07/2017, 15h13
  2. Ouvrir page html/php dans une Jframe & autres questions
    Par Invité dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 23/04/2010, 14h41
  3. [HTML] question police <font>
    Par BGDC dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/10/2004, 06h06
  4. [Applet][JTextPane][HTML]Accès a une image du JAR
    Par SamDaKap dans le forum Applets
    Réponses: 4
    Dernier message: 10/08/2004, 16h17
  5. Réponses: 5
    Dernier message: 25/11/2003, 10h02

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