bootstrap-italia icon indicating copy to clipboard operation
bootstrap-italia copied to clipboard

Input autocompletamento - E'consentita l'immissione di un valore non presente nell'origine

Open Andrea-P19 opened this issue 1 year ago • 3 comments

Comportamento attuale

Attualmente l'utente può inserire qualsiasi valore nell'input di completamento automatico (anche se non esiste nell'origine) e può procedere senza alcuna convalida. Su onConfirm non viene passato nulla, ma accade lo stesso quando il valore è già inserito e si passa nuovamente sul campo

Comportamento atteso

Sarebbe opportuno se nell'onConfirm (magari in abbinata con il la proprietà confirmonblur) venisse passato sempre il valore (anche se selezionato precedentemente e non modificato). In questo modo sarebbe possibile verificare sempre che sia stato selezionato un elemento valido fra quelli in lista.

Andrea-P19 avatar Dec 15 '23 13:12 Andrea-P19

@Andrea-P19 Hai dato un occhiata all'esempio riportato nella documentazione https://italia.github.io/bootstrap-italia/docs/esempi/form/?

L'input autocompletamento viene validato solamente se si selezionano i valori 'Alessandria', 'Bergamo', 'Piacenza' che fanno parte dell'orgine; quindi dovresti inserire tutti i valori dell'autocompletamento nella regola di validazione.

Magari non sarà una soluzione elegante ma dovrebbe risolvere temporaneamente il tuo problema.

.addField('#accessibleAutocomplete', [
        {
          rule: 'required',
          errorMessage: 'Questo campo è richiesto',
        },
        {
          validator: (value) => {
            return ['Alessandria', 'Bergamo', 'Piacenza'].includes(value);
          },
          errorMessage: 'Puoi scegliere solo tra Alessandria, Piacenza o Bergamo',
        },
      ])

Virtute90 avatar Jan 15 '24 09:01 Virtute90

@Virtute90 Avevo notato, ma si tratta di un autocompletamento relativo agli 8000 (e passa) Comuni Italiani, quindi non posso utilizzare quella tecnica. Grazie comunque per il suggerimento.

Andrea-P19 avatar Jan 15 '24 10:01 Andrea-P19