[SOLUCE INCLUE] Comment forcer des nombres dans un TEXTBOX ?

Comment forcer des nombres dans un TEXTBOX ? [SOLUCE INCLUE] - HTML/CSS - Programmation

Marsh Posté le 19-08-2008 à 15:49:49    

Ben voila, la question est dans le sujet...
 
soit cet exemple :
 
<input type="text" name="surface" id="surface" value="" size="5" /> m²
 
comment être sur qu'un petit malin ne va pas saisir des lettres ou autre ?
 
merci


Message édité par erwan83 le 20-08-2008 à 22:01:02

---------------
http://www.ypikay.com
Reply

Marsh Posté le 19-08-2008 à 15:49:49   

Reply

Marsh Posté le 19-08-2008 à 15:54:35    

Comme pour n'importe quel champ, vérification côté serveur [:petrus dei]

Reply

Marsh Posté le 19-08-2008 à 17:43:18    

met un event "onkeydown" sur ton input, et vérifies que la touche soit bien un chiffre, puis renvoit false si c'est pas le cas.


---------------
We deserve everything that's coming...
Reply

Marsh Posté le 20-08-2008 à 21:39:35    

Yo merci de ces rapides réponses, je vais chercher ça


---------------
http://www.ypikay.com
Reply

Marsh Posté le 20-08-2008 à 22:00:17    

Pour rien que des nombres:
 

Code :
  1. <script language="javascript">
  2. <!--
  3. function OnlyNumbers(e)
  4. {
  5. // if aEvent is null, means the Internet Explorer event model,  
  6. // so get window.event.  
  7. var IE5 = false;
  8. if (!e) var e = window.event;
  9. if (e.keyCode) { IE5= true; code = e.keyCode;}
  10. else if (e.which) code = e.which ;
  11. //test du code  
  12. if (code < 48 || code > 57)
  13. {
  14. if(IE5) e.returnValue = false;
  15. else e.preventDefault();
  16. }
  17. }
  18. //-->  
  19. </script>


 
Pour rien que des lettres
 

Code :
  1. <script type="text/javascript">
  2. function noNumbers(e)
  3. {
  4. var keynum;
  5. var keychar;
  6. var numcheck;
  7. if(window.event) // IE
  8. {
  9. keynum = e.keyCode;
  10. }
  11. else if(e.which) // Netscape/Firefox/Opera
  12. {
  13. keynum = e.which;
  14. }
  15. keychar = String.fromCharCode(keynum);
  16. numcheck = /\d/;
  17. return !numcheck.test(keychar);
  18. }
  19. </script>


---------------
http://www.ypikay.com
Reply

Marsh Posté le 20-08-2008 à 22:44:52    

T'es au courant que ce genre de bidouille ne sert à rien?
Je veux dire, tout le monde peut desactiver en partie ou totalement le JS en quelques cliques (en tous cas sous Firefox) , et du coups ton machin il servira plus à rien..
Comme l'a dit FlorentG, il faut faire une vérification côté serveur


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 20-08-2008 à 22:55:52    

esox_ch a écrit :

T'es au courant que ce genre de bidouille ne sert à rien?
Je veux dire, tout le monde peut desactiver en partie ou totalement le JS en quelques cliques (en tous cas sous Firefox) , et du coups ton machin il servira plus à rien..
Comme l'a dit FlorentG, il faut faire une vérification côté serveur


 
Mouais pas convaincu...
Meme si ce que tu avances est vrai, il ne faut pas oublier que la majorité des gens ne désactivent pas JS et en entreprise, les modifs de params sont souvent bloqués.
Cependant, même si ca n'exclue pas une validation coté serveur, dans une bonne majorité des cas les infos saisies le seront comme il faut ;)


---------------
We deserve everything that's coming...
Reply

Marsh Posté le 20-08-2008 à 23:27:51    

ça dépend quel public tu cibles, en fait.


---------------
NewsletTux - outil de mailing list en PHP MySQL
Reply

Marsh Posté le 21-08-2008 à 07:21:16    

SICKofitALL a écrit :

Mouais pas convaincu...


Euh si quand-même [:pingouino] Faut toujours tout vérifier côté serveur, c'est la base de toujours considérer comme potentiellement invalides les données entrantes.


Message édité par FlorentG le 21-08-2008 à 07:21:32
Reply

Marsh Posté le 21-08-2008 à 07:48:09    

SICKofitALL a écrit :


 
Mouais pas convaincu...
Meme si ce que tu avances est vrai, il ne faut pas oublier que la majorité des gens ne désactivent pas JS et en entreprise, les modifs de params sont souvent bloqués.
Cependant, même si ca n'exclue pas une validation coté serveur, dans une bonne majorité des cas les infos saisies le seront comme il faut ;)


Ce que tu oublies c'est que si tu fait aucun check côté serveur, suffi d'un mec mal intentionné et ton site est down ...
Non c'est totalement stupide de ne pas les faire côté serveur, surtout que ça se fait généralement en une ligne


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 21-08-2008 à 07:48:09   

Reply

Marsh Posté le 21-08-2008 à 09:47:16    

>FlorentG + esox_ch
Regardez dans ma phrase il y a "ca n'exclue pas une validation coté serveur" :o
Donc je reformule : valider du coté serveur est obligatoire, mais pré-valider du coté client est un plus :)


---------------
We deserve everything that's coming...
Reply

Marsh Posté le 21-08-2008 à 10:14:49    

SICKofitALL a écrit :

>FlorentG + esox_ch
Regardez dans ma phrase il y a "ca n'exclue pas une validation coté serveur" :o


Nan mais en plus s'il faut commencer à tout lire [:thalis]

Reply

Marsh Posté le 21-08-2008 à 10:37:40    

et si ..
<input name="Chiffres" onchange="this.value=parseInt(this.value);">


---------------
Photos Panoramiques Montagnes Haute Savoie
Reply

Marsh Posté le 21-08-2008 à 19:17:20    

FlorentG a écrit :


Nan mais en plus s'il faut commencer à tout lire [:thalis]


[:ddr555]


---------------
We deserve everything that's coming...
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed