Thymeleaf - comment ajouter l'attribut vérifié à l'entrée conditionnellement

Comme vous le savez, input composant a un attribut checked à savoir si la case à cocher est activée par défaut ou non.

<input type="checkbox" name="mycheckbox" checked="checked"/>

pour désactiver la case par défaut, le checked l'exception doit être déclarée. Est-il possible de définir checked attribut par un drapeau dans le Thymeleaf?

16
demandé sur mtyurt 2015-04-23 17:32:16

2 réponses

selon la documentation officielle de thymeleaf

http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#fixed-value-boolean-attributes

th:checked est considéré comme un attribut booléen à valeur fixe.

<input type="checkbox" name="active" th:checked="${user.active}" />

user.active devrait être un boolean.

Donc dans votre cas il faut que Andrea mentionné,

<input type="checkbox" name="mycheckbox" th:checked="${flag}" />
36
répondu Faraj Farook 2015-04-28 16:45:12

Après creusant un peu, j'ai trouvé la solution. Il n'y a th:checked attribut à cette fin.

Ceci fonctionne:

<input type="checkbox" name="mycheckbox" th:checked="${flag} ? 'checked'">

ceci échoue:

<input type="checkbox" name="mycheckbox" th:checked="${flag} ? 'checked' : ''">

Si checked="" est réglé sur input composant, c'est marqué vérifié. Cette méthode est valide pour les attributs personnalisésth:attr également. Considérons l'exemple suivant:

<p th:attr="customattr=${flag}?'attr'></p>

Si flag est vrai, il est remplacé par:

<p customattr="attr"></p>

Si flag est faux, il est remplacé avec:

<p></p>
6
répondu mtyurt 2015-04-23 14:32:16