bonjour,
je cherche à tester si un input contient des nombres (positifs, négatifs, entiers, ou décimaux). J'utilise donc une expression régulière :
Je pense mon expression régulière juste. Sous IE, je n'ai pas de souci. Par contre sous Firefox :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 <html> <head> <title></title> <script type="text/javascript"> <!-- function TestValeur() { var valeur = document.getElementById("idNB").value; var ExpNb = /(^\-?[0-9]+$)|(^\-?[0-9]+\.[0-9]+$)/g; document.getElementById("idRep").value = ExpNb.test(valeur); } //--> </script> </head> <body> <input type="button" value="Bouton" id="BNom" onclick="TestValeur()"> <input type="text" value="" id="idNB" size="20" maxlength="10"> <input type="text" value="" id="idRep" size="20" maxlength="10"> </body> </html>
-entrez un nombre dans "idNB"
-cliquez une 1ère fois sur le bouton > la valeur true apparaît dans l'input "idRep"
-cliquez une 2nde fois sur le bouton (sans changer la valeur )> la valeur false apparaît dans l'input
Par contre, si je tape autre chose qu'un nombre, le résultat est toujours false.
Quelqu'un a une explication ? Est-ce firefox (1.0) ou mon expression régulière ?
Partager