j-Choose
Le composant est une alternative à CheckboxListExpert et RadioButtonListExpert.
Configuration :
- Limite de sélection
limit {Number},1renverra une valeur,>1renverra un tableau de valeurs (par défaut :1) datasource {String}un chemin vers la source de données (par défaut : vide)required {Boolean}active la validation (par défaut :false)key {String}un nom de cléidentifierpour la source de données (par défaut :id)attr {String}adata-[attr]pour stockeridentifier(par défaut :id)selector {String}un sélecteur jQuery pour les éléments (par défaut :.selection)- Classe sélectionnée
class {String}(par défaut :selected) - Type de conversion
type {String}, prend en chargestringounumber(par défaut :string) uncheck {Boolean}permet de décocher la valeur sélectionnée pourlimit:1(par défaut :false)disabled {Boolean}désactive le composantclick {String}un lien vers lefunction(val)qui est évalué lorsque l'utilisateur modifie la valeur- NEW :
indexer {String}un sélecteur HTML pour la liaison de l'index sélectionné
Utilisez-le avec <ui-component name="choose">. Lorsque le composant n'est pas encore chargé, jComponent le télécharge lors de la première utilisation depuis l'adresse dans DEF.fallback (le CDN Componentator par défaut). Auteur : Peter Širka. Source : le référentiel de composants Componentator, licence MIT.
<style>
.iconmenu { height: 60px; text-align: center; }
.iconmenu i { font-size: 20px; display: block; padding: 10px 0 0; }
.iconmenu span { font-size: 12px; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 3px 5px 0; color: #777; }
.iconmenu > div.selected { background-color: rgba(0,0,0,0.07); }
.iconmenu > div { height: 60px; width: 75px; border: 1px solid #E0E0E0; border-left-width: 0; float: left; cursor: pointer; }
.iconmenu > div:first-child { border-left-width: 1px; border-top-left-radius: var(--radius); border-bottom-left-radius: var(--radius); }
.iconmenu > div:last-child { border-top-right-radius: var(--radius); border-bottom-right-radius: var(--radius); }
</style>
<ui-component name="choose" path="myselectionsingle" config="selector:div;limit:1" class="iconmenu m">
<div data-id="male">
<i class="ti ti-male"></i>
<span>Male</span>
</div>
<div data-id="female">
<i class="ti ti-female"></i>
<span>Female</span>
</div>
</ui-component>
<ui-component name="choose" path="myselectionmultiple" config="selector:div;limit:2;indexer:b" class="iconmenu m">
<div data-id="male">
<i class="ti ti-male"></i>
<span>Male</span><b></b>
</div>
<div data-id="female">
<i class="ti ti-female"></i>
<span>Female</span><b></b>
</div>
<div data-id="unknown">
<i class="ti ti-question-circle"></i>
<span>Unknown</span><b></b>
</div>
</ui-component>
<div>Output single: <code><ui-bind path="myselectionsingle" config="text:JSON.stringify(value)"></ui-bind></code></div>
<div>Output multiple: <code><ui-bind path="myselectionmultiple" config="text:JSON.stringify(value)"></ui-bind></code></div>