Contrôle texte et nombre dans formulaire

Contenu du snippet

Permet de contrôler la saisie ou strictement de texte sans caractères numériques ou divers, ou strictement de nombres.
Dans le texte, on peut saisir des espaces ou le tiret. C'est donc plutôt pour saisir un nom.
Le contrôle se fait par code ascii.
Vous pouvez changer en modifiant les valeurs ASCII.
voir : http://www.asciitable.com/

Source / Exemple :


<html>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="GENERATOR" CONTENT="UltraEdit-32">
<META NAME="Author" CONTENT="Thierry Denèle - France - Lille">
<script type="text/javascript" language="JavaScript">
var texte = new String("");
var b = new Number(1);
var codeT = new Number(0);
var d = new Number(0);
var nbcar = new Number(0);
var erreur = new Boolean(false); // par défaut 
function verifcode(car) {
// exclusivement du texte avec espace:
//    if ( ((car >= 65 && car <= 90) || (car >= 97 && car <= 122 ) || car == 32) 
// Tout (presque) sauf nombres
    if ( (car >= 32 && car <= 47) || (car >= 58 && car <= 122) || (car >= 128 && car <= 165 ) ) 
    		{erreur = false;}
        else  { erreur = true ;}
        }
function Controltext(texte) {
String(texte);
erreur = false;
nbcar = texte.length;
for (x = 0; x <= nbcar-1; x++) {
    codeT = texte.charCodeAt(x);
    verifcode(codeT);
    if(erreur == true) {alert("Vous devez saisir du texte");break;}
	}
}
function Controlnumber(Nbr) {
if (isNaN(Nbr))
alert( "Vous devez saisir un nombre");
}
</script>
</head>
<body>
<form><span>texte</span>
<input type="text" name="essai" value="" onChange="javascript:Controltext(this.value)">
<span>nombres</span><input type="text" name="essai2" value="" onChange="javascript:Controlnumber(this.value)">
</form>
</body>
</html>

Conclusion :


ouh là là, mea culpa. Je dois bien avouer que je vous ai balancé ce script sans en faire une vérification stricte et le contrôle texte ne marchait pas. Mes excuses.
Maintenant ça marche...
J'ai mis deux possibiltés, soit strictement du texte, soit un peu tous caractères, point tirets @ etc.. Mise à jour 11/12/02

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.