Outils pour utilisateurs

Outils du site


informatique:javascript:alpinejs

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
informatique:javascript:alpinejs [18/10/2025 10:38] cyrilleinformatique:javascript:alpinejs [31/12/2025 10:52] (Version actuelle) – [Select multiple] cyrille
Ligne 20: Ligne 20:
     * le tag ''x-component'' est modifiable. Voir la PR/MR https://github.com/markmead/alpinejs-component/pull/28     * le tag ''x-component'' est modifiable. Voir la PR/MR https://github.com/markmead/alpinejs-component/pull/28
  
 +===== Comparaison avec Juris JS =====
  
-Alternative Juris JS https://jurisjs.com/+  * https://dev.to/lynphp/alpinejs-to-jurisjs-migration-pure-debuggable-islandable-solution-4hp 
 +  * https://jurisjs.com/
  
 Alpine.js Limitations: Alpine.js Limitations:
Ligne 38: Ligne 40:
   * Service injection - Clean dependency injection pattern   * Service injection - Clean dependency injection pattern
   * Selector targeting - Precise DOM targeting without attribute pollution   * Selector targeting - Precise DOM targeting without attribute pollution
 +
 +===== Tips =====
 +
 +==== Select multiple ====
 +
 +Version simple ; utilise directement l'event ''$event.target.selectedOptions'' :
 +<code html>
 +<div class="mb-3">
 + <label for="rirSelect" class="form-label">Select RIR(s):</label>
 + <select id="rirSelect" class="form-select" multiple
 +    @change="filterRirs($event.target.selectedOptions)">
 +  <template x-for="rir in guiData.rirs" :key="rir.key">
 +   <option x-bind:value="rir.key" x-text="rir.attributes.label"></option>
 +  </template>
 + </select>
 +</div>
 +</code>
 +
 +Version avec bouton pour supprimer la sélection et désactiver ce bouton quand aucune sélection ; utilise un ''x-data'' :
 +<code html>
 +<div class="mb-3" x-data="{selectedOptions:[]}">
 + <label for="rirSelect" class="form-label">Select RIR(s):</label>
 + <button class="btn btn-outline-primary btn-sm"
 +   x-bind:disabled="selectedOptions.length==0"
 +   @click="selectedOptions=[];filterRirs()"
 +   >All</button>
 + <select id="rirSelect" class="form-select" multiple
 +   x-model="selectedOptions" @change="filterRirs(selectedOptions)"
 +   >
 +  <template x-for="rir in guiData.rirs" :key="rir.key">
 +   <option x-bind:value="rir.key" x-text="rir.attributes.label"></option>
 +  </template>
 + </select>
 +</div>
 +</code>
 +
 +
  
informatique/javascript/alpinejs.1760776729.txt.gz · Dernière modification : de cyrille

Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki