Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Controllare caratteri max di una texarea,evitando CTRL+C CTRL+V

    Ciao a tutti
    in una pag.asp ho alcune textarea che non devono superare il limite di 500 caratteri, per il momento c'è questo:
    codice:
    <textarea  rows="8" name="areavuota" cols="45" style="font-family: Verdana; font-size: 10pt" onkeypress="javascript: if(document.NominateForm.sintesi_prop.value.length > '499') {alert('Nel campo Sintesi della Proposta si possono inserire massimo 500 caratteri');return false; } else return true;"><% If NominClosed = "False" Then %><%= NominationData("areavuota") %><% End If %></textarea>
    il problema è che se prendo un testo superiore a 500 caratteri lo copio e incollo, non dà alcun messaggio di errore (a meno che non aggiungo dopo un'altro carattere)

    Escludere il copia incolla non è previsto per motivi di praticità dei compilatori, come potrei fare?

    grazie a tutti

    Ciao
    Riesco a trovare ogni parola sul dizionario molto più velocemente da quando ho scoperto che sono in ordine alfabetico...

  2. #2
    Il controllo in tempo reale del numero di caratteri inseriti in un campo form lo puoi fare solo con javascript lato client e non con ASP.

  3. #3
    aggiungi il controllo anche nell'evento onblur

    codice:
    <textarea  rows="8" name="areavuota" cols="45" style="font-family: Verdana; font-size: 10pt" 
    onkeypress="java-script: if(document.NominateForm.sintesi_prop.value.length > '499') {alert('Nel campo Sintesi della Proposta si possono inserire massimo 500 caratteri');return false; } else return true;"
    
    onblur="java-script: if(document.NominateForm.sintesi_prop.value.length > '499') {alert('Nel campo Sintesi della Proposta si possono inserire massimo 500 caratteri');return false; } else return true;"
    
    >
    <% If NominClosed = "False" Then %><%= NominationData("areavuota") %><% End If %>
    </textarea>
    sarebbe meglio mettere il codice di controllo in una funzione
    codice:
    <script>
    function controlla(){
    if(document.NominateForm.sintesi_prop.value.length > '499') {
      alert('Nel campo Sintesi della Proposta si possono inserire massimo 500 caratteri');
      return false; } 
    else 
     return true;
    }
    
    onkeypress="controlla()" onblur="controlla()"
    
    </script>
    Inoltre ti conviene effettuare anche il controllo lato server per chi ha javascript disabilitato

  4. #4
    aggiungi il controllo anche nell'evento onblur
    ho provato aggiungendolo (anche se non sò che vuol dire.. ) e comunque ancora permette copia incolla senza dare errore..
    Riesco a trovare ogni parola sul dizionario molto più velocemente da quando ho scoperto che sono in ordine alfabetico...

  5. #5
    onblur è l'evento che viene eseguito quando la textarea perde il fuoco.

    Ovviamente permette ancora il copia e incolla

    Se fai copia e incolla di un testo con più di 500 caratteri ed esci dalla textare ti da errore.

  6. #6
    fregatene e quando prendi il valore del campo per inserirlo nel db ne prendi solo i primi N caratteri

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.