Una funzione per creare campi di form con controllo tramite Javascript

di Antonio Valente, in Classic ASP, UserScript, Coding,

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

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

Nessuna risorsa collegata

I più letti di oggi