Erreur de synthaxe javascript ou regex ?

dvwyns Messages postés 159 Date d'inscription mardi 2 janvier 2007 Statut Membre Dernière intervention 7 mai 2012 - 23 juin 2010 à 14:40
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 - 4 oct. 2010 à 22:08
Bonjour,

Après plusieurs essais infructueux, j'aimerais demander conseils à la communauté.
Je cherche à faire une fonction qui vérifie les champs d'un formulaire, j'utilise un regex pour savoir si un champ contient que des nombres avec un maximum de 9 nombres, si oui la fonction renvoi true sinon false.
Malheureusement, pour une raison que j'ignore, il ne me renvoie que false, alors que je mets bien des nombres.

function isNumber(elem){ //fonction pour verif si nombre

ExpReg = new RegExp("/^\d{1,9}$/g");
var bonnb = ExpReg.test(elem.value);
return bonnb;
}

Mais ou est mon erreur?
Merci

3 réponses

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
4 oct. 2010 à 14:43
Salut,

Je dirais que c'est une erreur de syntaxe Javascript.
Pour définir une RegExp en Javascript, il y a deux syntaxes :

// Syntaxe 1 :
var reg = /^\d{1,9}$/g
// Syntaxe 2 :
var reg = new RegExp('^\d{1,9}$', 'g');

Toi, tu as fait un mélange des deux ^^

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
0
dvwyns Messages postés 159 Date d'inscription mardi 2 janvier 2007 Statut Membre Dernière intervention 7 mai 2012
4 oct. 2010 à 21:54
Salut,
effectivement, j'ai trouvé depuis et c la synthaxe 2 que j'utilise.
function isNumber(elem,nbNbr){ //fonction pour verif structure NBR
        var exp = new RegExp("^[0-9]{1,"+nbNbr+"} *$","g");
        return exp.test(elem);
}


J'aurai du y répondre avant, mais j'avais oublié que j'avais créé ce post.
Merci, tout de même, pour ton aide
0
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
4 oct. 2010 à 22:08
LOL pardon, j'avais pas vu la date... Je suis habitué au forum de phpcs qui est .. euh... plus vivant lol
Désolé d'avoir déterré un vieux post !

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
0
Rejoignez-nous