Probleme de controle de saisi

rachidphp93 Messages postés 212 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 8 avril 2007 - 13 avril 2006 à 11:51
rachidphp93 Messages postés 212 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 8 avril 2007 - 14 avril 2006 à 14:21
bonjour tout le monde je suis debutant,

voila j'ai recuperé des fonction que j'ai adapté mais ça ne marche pas comme je veux?

function testeNumerique (texte) {
// on teste ici si la chaîne ne contient bien
// que des chiffres sur 5 caractères
// comme un code postal, par exemple
var comparaison = /^[0-9]{0,5}$/g;
if ( comparaison.test(texte)){
return true;
} else {
return false;
}
}

function testeAlphaNumerique (texte) {
// on teste ici si la chaîne ne contient bien
// que des caractères alphanumérique, minuscules ou majuscules
// sur 8 caractères, comme pour un mot de passe par exemple
var comparaison = /^[a-zA-Z0-9]{0,3}$/g;
if ( comparaison.test(texte)){
return true;
} else {
return false;
}
}

function controle(inseeagt) {

alert("Vous avez tapé : " + inseeagt);
res=testeNumerique(inseeagt);
alert("le res est : " + res);
return res;
}

je rentre un insee: 4 par exemple donc comme c<5 caractere res=false ben non res=true;

9 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
13 avril 2006 à 12:01
Bonjour,

function testeNumerique (texte)
{ // on teste ici si la chaîne ne contient bien
// que des chiffres sur 5 caractères
// comme un code postal, par exemple

var comparaison = /^[0-9]{5}$/g;
return comparaison.test(texte);
}

peut-être ?
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
rachidphp93 Messages postés 212 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 8 avril 2007
13 avril 2006 à 16:32
salut, non ca marche pas, !

là j'essaye juste de tester si mes champs sont vide ou pas, si oui le cursus reste dans le champs vide:

<script language="javascript">

function verif_formulaire(name)
{
if(name.value == "") {
var nom=name.name;
alert("Veuillez entrer votre: "+nom);
return false;
}
else return true;
}

<!--
// champ1 : champ de départ
// champ2 : champ d'arrivée
function Compter(champ1, champ2, maxi) {
var max=maxi;

// Nombre de caractères max autorisés avant de passer au champ suivant

if (document.getElementById && !document.all) {
var max = max-1;
}
res=verif_formulaire(champ1);
if (!res){
alert('voila mon res'+res);
champ1.focus();
}
else{// longueur actuelle du champ1
StrLen = champ1.value.length
// Si le nombre de caractères est >= au nombre max autorisé, on passe au champ suivant
if (StrLen >= max) {
// On sélectionne les 'max' premiers caractères entrés et on les définit comme valeur pour le champ1
champ1.value = champ1.value.substring(0,max);
// On initialise le champ2 à rien
champ2.value="";
// Et on met le focus sur celui-ci, pour ne pas avoir à cliquer
champ2.focus();
}
}
}
//-->
</script>

<form name="formulaire" method="post" action="#">
Date de naissance :,

</form>

Merci de m'aider, pour quoi mon curseur passe au champs suivant?
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
13 avril 2006 à 18:27
>>salut, non ca marche pas, !
si, si, ça marche...
peut-être pas appliqué comme il faut !

function testeNumerique (texte)
{
var comparaison = /^[0-9]{5}$/g;
return comparaison.test(texte);

}

alert(testeNumerique ("12345"));

alert(testeNumerique ("123"));

et dans le dernier message c'est une autre question ?
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
rachidphp93 Messages postés 212 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 8 avril 2007
14 avril 2006 à 11:33
salut,

c'est encore avec cette histoire de numerique, j'ai testé le tien ca marche nikel, mais quand je l'incruste dans un scripte avec un formulaire ca marche plus je croi que je ne lui donne pas ce qu'il faut en parametres:

<script type="text/javascript">
function verif_formulaire(n)
{
// v=n.value;
//alert('voila le value'+v);
if(n.value=="") {
var nom=n.name;
alert("Veuillez entrer votre: "+nom);
return false;
}
else{
var comparaison = /^[0-9]{5}$/g;
v=n.value;
alert(comparaison.test(v));
return comparaison.test(v);
}
}
function Compter(champ1,champ2) {

var res=verif_formulaire(champ1);
if (!res)
{
alert('voila mon res'+res);
champ1.focus();
}
else
{
if ( champ1.value.length==champ1.maxLength)
{
champ2.focus();
}
}
}
</script>

une petite aide, merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
14 avril 2006 à 11:44
et qu'est-ce qui ne va pas ?
pour moi tout baigne....
si le but est de contrôler 5 caractères numériques ...

<script type="text/javascript">
function verif_formulaire(n)
{
if(n.value=="") {
var nom=n.name;
alert("Veuillez entrer votre: "+nom);
return false;
}
else{
var comparaison = /^[0-9]{5}$/g;
v=n.value;
return comparaison.test(v);
}
}
</script>



on pourait d'ailleurs utiliser
return ( !isNaN(n.value) && n.value.length==5 );

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>

</FO>
</S< body>
0
rachidphp93 Messages postés 212 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 8 avril 2007
14 avril 2006 à 12:07
Mon but est de verifier si un numero insee contien des caractere alphanumerique (pas caractere speciale) donc j'ai commencé par la fonction suivante:

function testeAlphaNumerique (texte) {
// on teste ici si la chaîne ne contient bien
// que des caractères alphanumérique, minuscules ou majuscules
// sur 8 caractères, comme pour un mot de passe par exemple
var comparaison = /^[a-zA-Z0-9]{0,8}$/g;
if ( comparaison.test(texte)){
return true;
} else {
return false;
}
}

et ça ne marché pas, je voulai donc aller doucement et je teste d'abord si tout est numerique, le probleme c'est que j'ai séparé les champs de saisi de l'insee (question de vesibilité pour le user) donc j'ai 7 champs texte a verifier. comme t'as pu le voir j'envoi a la fonction compter champ en cours et le champs suivant, puis j'appel la fonction verif formulaire et je lui donne que le champ en cour et je veux qu'elle verifi d'abord s'il est vide si oui si il est alphanumerique (ou numerique pour l'instant), sinon elle renvoi false et mon curseur reste dans le champs en cours,

deja (5) carcter c'est pas bon ! c'est variable 1 2 ou 3 caracteres je dois donc envoyer le maxLength.

désolé du lourdeur du texte.
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
14 avril 2006 à 12:32
° {0,8} c'est autoriser de 0 à 8 caractères, pas obligatoirement 8
lire la doc des expressions régulières ( pas simple au début, c'est sûr )
\w teste si "alphanumérique"
$ en fin de zone ? pourquoi ?
/g répéter le test ? ça veut dire qu'il peut y avoir plusieurs n° dans le champ
...
° pourquoi faire un test alors que retourner directement c'est pareil ?
if ( test ) return true; else return false;
ça revient au même que faire return ( test );
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>

</FO>
</S< body>
0
rachidphp93 Messages postés 212 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 8 avril 2007
14 avril 2006 à 13:36
j'ai un prbleme qui me casse la tete, tu peux m'aider stp?

mon premier teste c'est de verifier si les toutes les case ne sont pas vides, si une case de mon insee est vide j'affiche une alert puis le curseur reste dans cette case, mon probleme c'est que mon curseur passe a la case suivante???

voila mon script sur deux case seulement,

et ca marche pas comme on veut, le curseur passe apres l'alert!!

<script language="JavaScript">
function verif_formulaire(n)
{
if(n.value=="") {
var nom=n.name;
alert("Veuillez entrer votre: "+nom);
n.focus();
}
}
function Compter(champ1,champ2) {
if ( champ1.value.length==champ1.maxLength)
{
champ2.focus();
}
}
</script>
<form name="formulaire" method="post" action="#">
Date de naissance :,

</form>
</script>

merci de ton aide
0
rachidphp93 Messages postés 212 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 8 avril 2007
14 avril 2006 à 14:21
bon la je comprend plus rien!!!!, ca bloc t'as une idee?
0
Rejoignez-nous