[RegExp]Contrôle dynamique de champs
Salut à tous !
J'ai un petit souci javascript et je n'en voit pas la raison !
J'ai un tableau qui contient plusieurs input, et avec le onblur je teste e qui a été rentré ou non.
Code HTML:
Code:
1 2 3 4 5 6 7 8
| <body>
This is my HTML page. <br>
<input type="text" id="inputText1" onblur="javascript:fieldControl('inputText1','2');">
<input type="text" id="inputText2" onblur="javascript:fieldControl('inputText2','3');">
<input type="text" id="inputText3" onblur="javascript:fieldControl('inputText3','5');">
</body>
</html> |
CODE JS:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <script language="Javascript">
function fieldControl(id, i1)
{
alert(i1);
var fieldValue = document.getElementById(id).value;
alert(fieldValue);
var pattern = /([0-9]{1,3})|([0-9]{1,3}[.][0-9]{0,2})/;
alert(pattern);
if(pattern.test(fieldValue)){
alert("ça marche ");
} else {
alert("ca marche pas ");
}
}
</script> |
Dans cette pattern, je veux que mon champs contienne exclusivement des chiffres et le texte doit être du type :
-12
-123
-123.12
-12.02
Les champs du style :
-ahvbae
-123456
-18aelé=)
Doivent renvoyé une erreur.
Problème: Pour détecter les caractères cela fonctionne mais pour le nombre de chiffre tapé (ici 3 autorisés), cela ne fonctionne pas !! (il dit " Ca marche" et non le contraire ...)
Auriez vous une idée ?
Merci pour vos réponses !!!