Clonare gli elementi di un modulo: SheepIt!
A volte, un modulo statico non è sufficiente se vogliamo far decidere all’utente il numero di informazioni da inserire nel modulo stesso. Il caso più semplice è, ad esempio, il caso in cui un utente voglia inserire uno o più indirizzi mail o numeri di telefono.
A questo scopo è nato SheepIt! un plugin per jQuery di Mariano Del Rosso che permette la clonazione di campi nel modulo, in modo che gli utenti possano facilmente decidere di inserire un nuovo campo o rimuoverne uno inserito in precedenza.
Elementi multipli possono essere aggiunti nel modulo e sono previste funzioni di callback per ciascun evento (prima e/o dopo l’inserimento di elementi).
Caratteristiche:
- Opzioni di configurazione: Limitare il numero di elementi, controlli personalizzabili, decidere il numero di elementi iniziali, conferma di eliminazione, ecc.
- Controlli avanzati: il plugin consente l’aggiunta di molteplici elementi allo stesso tempo, la rimozione dell’ultimo elemento e la rimozione di tutti gli elementi e molto altro ancora.
- Design ‘amichevole’: SheepIt! utilizza lo stesso modello che il progettista vede nell’editor. Ciò comporta un’estrema semplicità nell’aggiornamento del template.
- Iniettare dati: Grazie al metodo inject(), SheepIt! consente di caricare un array di dati per l’intero modulo, per un elemento clonato incorporato o per uno specifico elemento clonato. Il metodo esegue tutte le operazioni necessarie per caricare le informazioni fornite, tenendo conto degli elementi clonati esistenti e della configurazione iniziale.
- Funzioni di callback: Le funzioni di callback vengono utilizzate per eseguire codici personalizzati prima o dopo la clonazione di un elemento del modulo. E’ così possibile, ad esempio, impostare un metodo di convalida per gli elementi clonati.
- Moduli annidati: è possibile la gestione di elementi nidificati, per la gestione di moduli complessi.
- Moduli di pre-generati: SheepIt! è in grado di identificare elementi clonati pre-generati ed integrarli in modo da poterli gestire come gli altri. Questo è molto utile per interagire frameworks che gestiscono i moduli, come quello usato in Symfony per PHP.
- API: Il plugin dispone di una serie di metodi per il controllo del form usando Javascript.
[Download non trovato]
Sito autore e demo: http://www.mdelrosso.com/sheepit/index.php?lng=en_GB