Limiter la saisie de caractère dans une zone de saisie

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Limiter la saisie de caractère dans une zone de saisie

par lem » 18 mai 2007, 11:21

et la solution de lem me semble tout à fait correcte :)
Merci pour la validation :D

par Ryle » 16 mai 2007, 16:09

Pour des input de type "text", il suffit de définir l'atribut maxLength. Pour des champs de type textarea, il te faut effectivement passer par du javascript (nécessite donc qu'il soit activé) et la solution de lem me semble tout à fait correcte :)

Toutefois, cela ne dispense pas par la suite d'un contrôle des données reçues par php ;)

par lem » 16 mai 2007, 15:57

Je viens de le tester chez moi et ça fonctionne (avec IE)
Tu dis que cela ne fonctionne pas. Peux-tu nous montrer ton code pour qu'on puisse t'aider à le faire marcher ?

par moi » 16 mai 2007, 15:55

j'ai essayé mais que se soit sur internet explorer ou firefox, cela ne fonctione pas.

merci

par lem » 16 mai 2007, 15:40

Ca se fait en javascript:

Code : Tout sélectionner

<html><head><title>Limite la taille d'un textarea</title> <script> function limite(zone,max) { if(zone.value.length>=max){zone.value=zone.value.substring(0,max);} } </script> </head><body> <form name="menu1"> <TEXTAREA NAME="zone2Text" COLS="40" ROWS="10" onKeyUp="limite(this,40);" onKeyDown="limite(this,40);" >Votre texte ici.</TEXTAREA> </form> </body></html>

Limiter la saisie de caractère dans une zone de saisie

par moi » 16 mai 2007, 15:29

Bonjour,

Voila, j'aimerai savoir de quel manière l'on bloque la saisie a partir d'un certain nombre de caractère dans une zone de texte. J'aimerai si possible que lorque l'utilisateur saisissent cela se bloque si il depasse un nombre de caractère.

J'espère avoir été clair et que vous pourrez m'aider

Merci d'avance