Esempio di TagsInput
copia linkIntroduzione
In questo articolo vediamo come integrare un componente di tipo TagsInput, nel motore grafico RD3, tipicamente usato per popolare i campi TO/CC/BCC di una mail utilizzando questo componente.
In allegato trovate anche il progetto di esempio per il motore grafico FLUID.
Vogliamo ottenere questo risultato:

Definizione nell'IDE
Per prima cosa, nel progetto è stata creata una libreria client chiamata TagsInput e sono state definite le sue proprietà:


Classe wrapper lato client
Nella custom sono stati copiati i file tagger.js e tagger.css. Inoltre è stato creato un file javascript TagsInput.js contenente il codice della nostra classe wrapper.
Nota: Non abbiamo modificato i file Desktop.htm e Desktop_sm.htm perché il file TagsInput.js viene automaticamente caricato mentre i file tagger.js e tagger.css vengono caricati in fase di definizione della classe wrapper.


Caricamento delle dipendenze
Sfruttando il metodo statico LoadRequirements della classe CustomElement carichiamo le risorse dipendenti.

Realizzazione del componente
E' stato definito il metodo Realize nel quale viene costruito l'elemento tramite le classi ed i metodi della libreria "nativa".
Siccome il componente nativo non notifica nessun evento quando si agggiunge o rimuove un tag attacchiamo un osservatore all'oggetto DOM per intercettare il cambio del valore e lo inviamo al server.


Funzionamento del componente
Ogni volta che il campo riceve un valore dal server viene invocato il metodo SetValue() overridando il quale andiamo a splittare il valore e creare/eliminare i tag di conseguenza.


Ultima modifica: 30/11/2022 / Validità: da 21.0.8100