Un componente che consente la creazione di liste di checkbox.
Il componente Transfer consente di trasferire gli elementi di una lista di checkbox ad un’altra lista di checkbox.
Il componente Transfer contiene
Lista checkbox di sinistra
Pulsanti per il trasferimento dei contenuti da lista a lista
Lista checkbox di destra
Le liste di checkbox, sono composte da:
Header: contiene un checkbox per la selezione / deselezione di tutti i campi sottostanti e la label che contiene il numero di elementi della lista
Lista checkbox
Pulsanti per il trasferimento dei contenuti:
a.transfer: Traferisce i campi selezionati a sinistra nella colonna destra
a.backtransfer: Traferisce i campi selezionati a destra nella colonna sinistra
a.reset: Ripristina lo stato iniziale delle liste
Nell’esempio che segue la struttura è colonnare simmetrica nella versione desktop (5 / 2 / 5), l’utente potrà scegliere i tipi di colonna da utilizzare, usando le regole di bootstrap.
Etichetta per freccia destraEtichetta for freccia sinistraEtichetta per icona di reset
<divdata-bs-transfer><divclass="row"><divclass="col-xs-12 col-md-5"><divclass="it-transfer-wrapper source"><divclass="transfer-header"><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox1"><labelfor="checkbox1"><span><spanclass="num">
6
</span><span> ITEMS</span></span><spanclass="descr">Source</span></label></div></div><divclass="transfer-scroll"><divclass="transfer-group"><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox2"><labelfor="checkbox2"><span><span>List item 1</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox3"><labelfor="checkbox3"><span><span>List item 2</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox4"><labelfor="checkbox4"><span><span>List item 3</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox5"><labelfor="checkbox5"><span><span>List item 4</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox6"><labelfor="checkbox6"><span><span>List item 5</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox7"><labelfor="checkbox7"><span><span>List item 6</span></span></label></div></div></div></div></div><divclass="col-xs-12 col-md-2"><!-- transfer buttons--><divclass="it-transfer-buttons"><aclass="transfer"href="#"role="button"aria-label="Sposta avanti"><svgclass="icon"><usehref="/bootstrap-italia/dist/svg/sprites.svg#it-arrow-right"></use></svg></a><spanclass="visually-hidden">Etichetta per freccia destra</span><aclass="backtransfer"href="#"role="button"aria-label="Sposta indietro"><svgclass="icon"><usehref="/bootstrap-italia/dist/svg/sprites.svg#it-arrow-left"></use></svg></a><spanclass="visually-hidden">Etichetta for freccia sinistra</span><aclass="reset"href="#"role="button"aria-label="Reset"><svgclass="icon"><usehref="/bootstrap-italia/dist/svg/sprites.svg#it-restore"></use></svg></a><spanclass="visually-hidden">Etichetta per icona di reset</span></div></div><divclass="col-xs-12 col-md-5"><divclass="it-transfer-wrapper target"><divclass="transfer-header"><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox1b"><labelfor="checkbox1b"><span><spanclass="num">
6
</span><span> ITEMS</span></span><spanclass="descr">Target</span></label></div></div><divclass="transfer-scroll"><divclass="transfer-group"><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox2b"><labelfor="checkbox2b"><span><span>List item 7</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox3b"><labelfor="checkbox3b"><span><span>List item 8</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox4b"><labelfor="checkbox4b"><span><span>List item 9</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox5b"><labelfor="checkbox5b"><span><span>List item 10</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox6b"><labelfor="checkbox6b"><span><span>List item 11</span></span></label></div><divclass="form-check"aria-describedby=""><inputtype="checkbox"id="checkbox7b"><labelfor="checkbox7b"><span><span>List item 12</span></span></label></div></div></div></div></div></div></div>
Attivazione tramite codice
Nel caso in cui si desidera che il componente sia inizializzato in maniera automatica
utilizzare l’attributo data-bs-transfer per la sua inizializzazione.
Nel caso in cui si desidera importare e inizializzare autonomamente il componente
l’attributo data-bs-transfernon deve essere incluso così da evitare
inizializzazioni automatiche che possono portare a comportamenti inaspettati.
Metodo statico che consente di ottenere l'istanza di avviso associata a un elemento DOM, è possibile utilizzarlo in questo modo: Transfer.getInstance(domElement).
getOrCreateInstance
Metodo statico che restituisce un'istanza di avviso associata a un elemento DOM o ne crea una nuova nel caso in cui non fosse stata inizializzata. Puoi utilizzarla in questo modo: Transfer.getOrCreateInstance(element).
dispose
Rimuove la funzionalità Transfer.
Breaking change
Agli elementi di <a> occorre aggiungere l’attributo role="button".