Con questa funzione sarà possibile aggiungere al volo ad un form campi di tipo text o textarea con relativo controllo sul tipo dei caratteri ammessi nel campo durante la digitazione, facendo uso delle regular expression e dell'evento OnKeyUp di Javascript.
E' facilmente personalizzabile modificando semplicemente il blocco select interno alla funzione:
<% function abilita(nome,cosa,tipo,valore_iniz,classe) controllo=1 if isnumeric(cosa) then t=cosa else t=0 end if select case t' Controllo sul 2° parametro in ingresso alla funzione attraverso JavaScript case 1 espressione="this.value=this.value.replace(/[^a-zA-Z\s]/gi, '');" case 2 espressione="this.value=this.value.replace(/[\D]/gi, '');" case 3 espressione="this.value=this.value.replace(/[^a-zA-Z\d]/gi, '');" case 4 espressione="this.value=this.value.replace(/[^a-zA-Z\'_\-\.\@\d]/gi, '');" case 5 espressione="this.value=this.value.replace(/[^a-zA-Z\:\/\.\_\-\d]/gi, '');" case 0 controllo=0 end select if controllo=1 then eventi="onkeyup="""&espressione&"""" else ' campo libero eventi="" end if if len(classe)>0 then cl="class="""&classe&"""" end if if len(valore_iniz)>0 then vi="value="""&valore_iniz&"""" end if if lcase(tipo)="textarea" then abilita="<textarea "&cl&" name="&nome&" "&eventi&">"&valore_iniz&"</textarea>" else abilita="<input "&cl&" type=TEXT "&vi&" name="&nome&" "&eventi&">" end if end function %>
Ecco la lista delle opzioni accettate dal parametro cosa:
1 - solo lettere + spazi
2 - solo numeri senza spazi
3 - solo lettere e numeri senza spazi
4 - email
5 - URL (no querystring)
0 - nessun controllo
Nel parametro nome dovremo indicare il nome del campo, in quello tipo text o textarea (a seconda del tipo di campo da visualizzare), in valore_iniz il valore iniziale del campo stesso ed infine in classe lo stile da applicare.
Supponiamo di avere un form per la registrazione ad una community, includendo la nella pagina del form questa funzione ci basterà scrivere:
<form method=post> <%=abilita("nome",1,"text","","")%>nome<br> <%=abilita("cognome",1,"text","","")%>cognome<br> <%=abilita("nick",3,"text","","")%>Nick<br> <%=abilita("pwd",3,"text","","")%>Password<br> <%=abilita("email",4,"text","","")%>email<br> <%=abilita("tel",2,"text","","")%>n°tel<br> <%=abilita("url",5,"text","http://","")%>sito web<br> <%=abilita("firma",0,"textarea","","")%>Firma nei messaggi<br> <input type=submit value="registra"> </form>
Automaticamente sarà generato il codice Javascript ed i campi, con controllo sull'input dell'utente.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Eseguire una chiamata AJAX per inviare dati al server in Angular 2
- Formati per l'impostazione del colore in CSS3
- la Call For Papert per #netconfit è aperta!invia la tua sessione da https://aspit.co/netconfit-20 puoi parlare di #net5, #aspnet5, #efcore5, #CSharp9 e tutto quello che ruota intorno a #dotnet.
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Impostare un riferimento ad una entity collegata tramite foreign key