Regole di validazione
Yav attualmente implementa queste regole di validazione
(codifica: identificatore regola, obbligatorio e opzionale).
alnumhyphen
sintassi: fieldName:nameDisplayed|alnumhyphen|msg
descrizione: <fieldName> deve contenere soltanto i caratteri a-z, A-Z, 0-9 o -_ .
msg default: ALNUMHYPHEN_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
alnumhyphenat
sintassi: fieldName:nameDisplayed|alnumhyphenat|msg
descrizione: <fieldName> deve contenere soltanto i caratteri a-z, A-Z, 0-9 or -_@ .
msg default: ALNUMHYPHENAT_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
alphabetic
sintassi: fieldName:nameDisplayed|alphabetic|msg
descrizione: <fieldName> deve contenere soltanto i caratteri a-z o A-Z .
msg default: ALPHABETIC_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
alphanumeric
sintassi: fieldName:nameDisplayed|alphanumeric|msg
descrizione: <fieldName> deve contenere soltanto i caratteri a-z, A-Z o 0-9 .
msg default: ALPHANUMERIC_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
alphaspace
sintassi: fieldName:nameDisplayed|alphaspace|msg
descrizione: <fieldName> deve contenere soltanto i caratteri a-z, A-Z, 0-9, -_ or Space .
msg default: ALPHASPACE_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
and
sintassi: indice della prima regola|and|indici delle altre regole (separatore: -)|msg
descrizione: definisce l'operatore AND tra due o più regole. Ciascuna regola è identificata dall'indice nel tuo array di regole.
note (a partire da yav 1.4.0):
Ciascuna regola utilizzata come operando deve essere marcata come 'andor-operator' (la vecchia sintassi con la pre-condizione funziona ancora ma è deprecata). E' possibile utilizzare '
and' stessa come 'andor-operator'.
esempio: 1|and|2-3|(1 and 2 and 3) non validato.
custom
syntax: fieldName|custom|functionName() [la vecchia sintassi:
functionName()|custom funziona ancora]
descrizione: Esegue la validazione secondo una regola personalizzata.
note:
Puoi creare le tue proprie regole di validazione. Ecco i passi da seguire:
- crea una funzione js che restituisce null se la validazione ha successo, o un messaggio di errore se fallisce;
- crea la tua regola con la sintassi sopra descritta.
La tua funzione js può usare dei parametri in input.
esempio: miaFunzione(mieiParametri)|custom
date
sintassi: fieldName:nameDisplayed|date|msg
descrizione: <fieldName> deve essere una data valida.
msg default: DATE_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note: Puoi cambiare il valore della variabile DATE_FORMAT nel file yav-config.js per impostare un diverso formato di data(attualmente sono permessi i seguenti marcatori: dd=giorno, MM=mese, yyyy=anno).
date_le
sintassi: fieldName:nameDisplayed|date_le|dateValue|msg
descrizione: <fieldName> deve essere non successiva a <dateValue>.
msg default: DATE_LE_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note: Puoi utilizzare meta-valori (usando il prefisso $) per indicare un altro campo input nel tuo form html. Opzionalmente, si può specificare un nome di visualizzazione diverso usando la sintassi $fieldName:nameDisplayed.
Puoi cambiare il valore della variabile DATE_FORMAT nel file yav-config.js per impostare un diverso formato di data(attualmente sono permessi i seguenti marcatori: dd=giorno, MM=mese, yyyy=anno).
esempi: primaData:Prima data|date_le|01-01-2000 , primaData|date_le|$secondaData:Seconda data
date_lt
sintassi: fieldName:nameDisplayed|date_lt|dateValue|msg
descrizione: <fieldName> deve essere precedente a <dateValue>.
msg default: DATE_LT_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note: Puoi utilizzare meta-valori (usando il prefisso $) per indicare un altro campo input nel tuo form html. Opzionalmente, si può specificare un nome di visualizzazione diverso usando la sintassi $fieldName:nameDisplayed.
Puoi cambiare il valore della variabile DATE_FORMAT nel file yav-config.js per impostare un diverso formato di data(attualmente sono permessi i seguenti marcatori: dd=giorno, MM=mese, yyyy=anno).
esempi: primaData:Prima data|date_lt|01-01-2000 , primaData|date_le|$secondaData:Seconda data
double
sintassi: fieldName:nameDisplayed|double|msg
descrizione: <fieldName> deve essere un numero decimale (opzionalmente preceduto da +-).
msg default: DOUBLE_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note: Puoi cambiare il valore della variabile DECIMAL_SEP nel file yav-config.js per impostare un diverso separatore decimale.
email
sintassi: fieldName:nameDisplayed|email|msg
descrizione: <fieldName> deve essere una e-mail valida, oppure vuoto.
msg default: EMAIL_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
empty
sintassi: fieldName:nameDisplayed|empty|msg
descrizione: <fieldName> deve essere vuoto.
msg default: EMPTY_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
equal
sintassi: fieldName:nameDisplayed|equal|textValue|msg
descrizione: <fieldName> deve essere uguale a <textValue>.
msg default: EQUAL_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea, checkbox, select, radio
note: Puoi utilizzare meta-valori (usando il prefisso $) per indicare un altro campo input nel tuo form html. Opzionalmente, si può specificare un nome di visualizzazione diverso usando la sintassi $fieldName:nameDisplayed.
implies
sintassi: indice della pre-condizione|implies|indice della post-condizione|msg
descrizione: Definisce una dipendenza tra due regole. Ciascuna regola è identificata dall'indice nel tuo array di regole.
note:
Questa regola ha il seguente comportamento:
- se la pre-condizione fallisce, ha successo;
- se la pre-condizione ha successo, viene valutata la post-condizione.
Puoi creare la tua regola "implies" seguendo questi passi:
- definisci una pre-condizione;
- definisci una post-condizione;
- definisci la tua regola "implies" specificando gli indici corretti per pre e post-condizione.
Vedere
Impara per esempi per un esempio completo.
integer
sintassi: fieldName:nameDisplayed|integer|msg
descrizione: <fieldName> deve essere un numero intero (opzionalmente preceduto da +-).
msg default: INTEGER_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
keypress
sintassi: fieldName:nameDisplayed|keypress|caratteri ammessi
descrizione: <fieldName> può contenere solo i caratteri ammessi, gli altri non sono digitabili.
msg default: none
applicabile a: hidden, text, password, textarea
note:
aggiungi la chiamata alla funzione checkKeyPress(event, this, rules) all'evento onkeypress sul tuo campo input del form;
il parametro <rules> è l'array con le tue regole.
Vedere
Impara per esempi per un esempio completo.
Questa regola funziona con Internet Explorer, Netscape e Firefox.
mask
sintassi: fieldName|mask|maskName
descrizione: <fieldName> rispetta la maschera <maskName>.
msg default: non applicabile
applicabile a: hidden, text, password, textarea
note:
Maschere pre-definite in yav:
alphabetic, alphanumeric, alnumhyphen, alnumhyphenat, alphaspace.
Puoi definire le tue maschere utilizzando la funzione
yav.addMask().
Vedi l'esempio
Le maschere per maggiori dettagli.
maxlength
sintassi: fieldName:nameDisplayed|maxlength|intValue|msg
descrizione: <fieldName> deve avere lunghezza non maggiore di <intValue>.
msg default: MAXLENGTH_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
minlength
sintassi: fieldName:nameDisplayed|minlength|intValue|msg
descrizione: <fieldName> deve avere lunghezza non minore di <intValue>.
msg default: MINLENGTH_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
notequal
sintassi: fieldName:nameDisplayed|notequal|textValue|msg
descrizione: <fieldName> deve essere diverso da <textValue>.
msg default: NOTEQUAL_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea, checkbox, select, radio
note: Puoi utilizzare meta-valori (usando il prefisso $) per indicare un altro campo input nel tuo form html. Opzionalmente, si può specificare un nome di visualizzazione diverso usando la sintassi $fieldName:nameDisplayed.
numeric
sintassi: fieldName:nameDisplayed|numeric|msg
descrizione: <fieldName> deve contenere solo cifre.
msg default: NUMERIC_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
numrange
sintassi: fieldName:nameDisplayed|numrange|min-max|msg
descrizione: <fieldName> deve essere un numero nell'intervallo min-max.
msg default: NUMRANGE_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note:
or
sintassi: indice della prima regola|or|indici delle altre regole (separatore: -)|msg
descrizione: definisce l'operatore OR tra due o più regole. Ciascuna regola è identificata dall'indice nel tuo array di regole.
note (a partire da yav 1.4.0):
Ciascuna regola utilizzata come operando deve essere marcata come 'andor-operator' (la vecchia sintassi con la pre-condizione funziona ancora ma è deprecata). E' possibile utilizzare '
or' stessa come 'andor-operator'.
esempio: 1|or|2-3|(1 or 2 or 3) non validato.
post-condition
sintassi: definizione di regola|post-condition
descrizione: definisce una post-condizione.
note:
Vedere
Impara per esempi per un esempio completo.
Vedere
implies per dettagli.
pre-condition
sintassi: definizione di regola|pre-condition
descrizione: definisce una pre-condizione.
note:
Vedere
Impara per esempi per un esempio completo.
Vedere
implies per dettagli.
regexp
sintassi: fieldName:nameDisplayed|regexp|regexpValue|msg
descrizione: <fieldName> deve corrispondere al pattern <regexpValue>.
msg default: REGEXP_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea
note: regexpValue deve essere una espressione regolare. Si deve utilizzare '\\' al posto di '\'.
Per esempio, .+@.+\\..+$ valida un semplice formato e-mail.
required
sintassi: fieldName:nameDisplayed|required|msg
descrizione: <fieldName> è obbligatorio.
msg default: REQUIRED_MSG nel file yav-config.js
applicabile a: hidden, text, password, textarea, checkbox, select, radio
note: