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

Développement Web en Java Discussion :

Condition if avec ThymeLeaf


Sujet :

Développement Web en Java

  1. #1
    Membre chevronné

    Homme Profil pro
    Développeur informatique
    Inscrit en
    octobre 2013
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : octobre 2013
    Messages : 739
    Points : 1 916
    Points
    1 916
    Par défaut Condition if avec ThymeLeaf
    Bonjour,

    Je commence avec ThymeLeaf, et j'ai un peu de mal avec les conditions "if".

    Dans un formulaire je souhaite bloquer la saisie des clef primaire, quand je suis en modification, car j'utilise le même formulaire pour l'ajout ou la modification.

    J'ai écrit le code ci-dessous pour le champs input concerné.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="text" th:field="*{code}" id=" name" placeholder="code" th:if="${mode} == 'update'" th:disabled="disabled" >
    Je n'ai pas besoin du "th:unless...", car si c'est faux je ne mets pas d'attribut "disabled"
    Globalement je trouve la construction avec "unless" un peu verbeuse.

    Pour l'instant si c'est vrai ça s'affiche sinon si c'est faux la ligne entière ne s'affiche pas.
    Et c'est ça que je ne comprends pas.

    Merci si vous pouvez m'éclairer.

    Cordialement
    Consultez mes articles sur l'accessibilité numérique :

    Comment rendre son application SWING accessible aux non voyants
    Créer des applications web accessibles à tous

    YES WE CAN BLANCHE !!!

    Rappelez-vous que Google est le plus grand aveugle d'Internet...
    Plus c'est accessible pour nous, plus c'est accessible pour lui,
    et meilleur sera votre score de référencement !

  2. #2
    Membre actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    janvier 2007
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Communication - Médias

    Informations forums :
    Inscription : janvier 2007
    Messages : 252
    Points : 281
    Points
    281
    Par défaut
    Bonjour à vous,

    Je suppose que vous voulez désactiver ou non le champs en fonction d'une condition ?

    l'attribut th:if sert uniquement à déterminer si une balise (et ses enfants) s'affichent ou pas (source).

    Dans l'exemple ci-dessous, la balise div, label et input seront affiché uniquement si la variable condition vaut true. Sinon, rien ne s'affiche.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <div th:if="${condition}">
        <label>Libellé</label>
        <input type="text" />
    </div>
    Cependant, le créateur de Thymeleaf à pensé au cas des attributs disabled et similaire (source).

    Vous pouvez donc mettre directement la condition dans l'attribut comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="text" th:field="*{code}" id=" name" placeholder="code" th:disabled="${mode} == 'update'" >
    Bien à vous

  3. #3
    Membre chevronné

    Homme Profil pro
    Développeur informatique
    Inscrit en
    octobre 2013
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : octobre 2013
    Messages : 739
    Points : 1 916
    Points
    1 916
    Par défaut
    Bonjour,

    C'est exactement ça.
    JE veux que dans le formulaire le champs de la clef primaire soit désactivé, quand on modifie un enregistrement et actif pour une création.
    Donc j'ajuste seulement l'attribut.

    Je n'avais pas bien compris que la condition s'appliquait à toute la ligne.
    Et je trouvais redondant de faire deux ligne avec 'unless'

    Merci pour le code et pour le lien

    Cordialement
    Consultez mes articles sur l'accessibilité numérique :

    Comment rendre son application SWING accessible aux non voyants
    Créer des applications web accessibles à tous

    YES WE CAN BLANCHE !!!

    Rappelez-vous que Google est le plus grand aveugle d'Internet...
    Plus c'est accessible pour nous, plus c'est accessible pour lui,
    et meilleur sera votre score de référencement !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/07/2007, 12h53
  2. Condition multiple avec And
    Par Aizen64 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 20/06/2007, 12h47
  3. Réponses: 2
    Dernier message: 16/06/2007, 13h37
  4. Réponses: 1
    Dernier message: 09/05/2007, 11h57
  5. [MySQL] Condition IN avec sous requête
    Par emphase dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 21/02/2007, 02h43

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