All’interno di un <form> inserire un campo input di tipo file con classe .upload, seguito da una label il cui attributo for="" deve corrispondere con il name e l’id del campo input.
I file caricati sono elencati come elementi <li> di una lista <ul> con classe .upload-file-list.
Ogni elemento può avere tre differenti stati e raltive classi:
.loading per i file in caricamento
.success per i file caricati correttamente
.error in caso di errori
Per utilizzare una immagine di anteprima al posto dell'icona SVG, alla lista <ul> con classe .upload-file-list va aggiunta la classe .upload-file-list-image.
Upload con gallery
Per gestire il caricamento di una serie di foto e l’anteprima delle stesse in forma di Gallery con thumbnail, includere un input file con classi .upload e .pictures-wall come elemento <li> di una lista <ul> con classe .upload-file-wall.
Le immagini caricate andranno aggiunte in testa alla lista <ul> come elementi <li> con classe upload-image.
Esempio Immagini Caricate
Upload drag&drop
Questa versione dell’upload permette all’utente di trascinare sull’icona che la caratterizza un file dal proprio dispositivo. In questo caso è l’interno form ad avere una classe specifica upload-dragdrop e l’attributo data-bs-upload-dragdrop alla quale possono essere aggiunte due ulteriori classi per la gestione degli stati:
.dragover quando un file è trascinato sull’icona
.loading quando un file è rilasciato sull’icona
.success quando un file è stato caricato con successo
I primi due stati sono gestiti dal codice JS incluso nello UI-Kit, lo stato di success dipende dal caricamento corretto del file sul server e va quindi gestito da chi svilupperà il font/back-end del sito o webapp.
Lo stato dell’upload è rappresentato graficamente dall’elemento <div class="progress-donut" data-bs-progress-donut></div> come progress circolare.
Default
Caricamento in corso
Caricamento completato
Attivazione tramite JavaScript
È possibile creare un’istanza con il constructor, ad esempio:
Metodi
Metodo
Descrizione
progress
fa avanzare la barra e la percentuale di completamento. Deve essere un numero compreso tra 0 e 1.0
start
fa comparire la barra e la percentuale di completamento
success
fa comparire lo stato di avvenuto completamento dell'operazione
reset
riporta la barra e la percentuale di completamento allo stato iniziale
getInstance
Metodo statico che restituisce l'istanza UploadDragDrop associata ad un elemento del DOM. Esempio: bootstrap.UploadDragDrop.getInstance(element)
getOrCreateInstance
Metodo statico che restituisce un'istanza UploadDragDrop associata ad un elemento del DOM o ne crea una nuova nel caso non fosse stata inizializzata. Esempio: bootstrap.UploadDragDrop.getOrCreateInstance(element)