Verifier saisie input [javascript]

Fermé
ckikiahdisa Messages postés 41 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 5 février 2008 - 17 janv. 2008 à 16:30
 08815266 - 26 déc. 2012 à 10:24
Bonjour,
Apres avoir rechercher sur le forum je vous pose donc la question à vous!!!

Je voudrais savoir comment (en javascript) peut on faire pour vérifier si une zone de saisie (input) ne contient que des chiffres (0123456789) ou que des lettres (abcde...)

Je dois utiliser le code ascii je pense mais en javascript je ne vois pas du tout comment faire, j'ai essayé de rechercher sur le net et rien

Merci a tous !!
A voir également:

5 réponses

Utilisateur anonyme
17 janv. 2008 à 17:35
bONSOIR?

applique la méthode .isNAN() qui retourne true si La valeur est autre chose qu'un numérique
Bonjour,

Perso j'utilise cette fonction :

isEmail = function(emailStr) {
	if (emailStr.toLowerCase().startsWith('www.')) { return false; }
	var checkTLD = 1;
	var knownDomsPat = /^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum|fr)$/;
	var emailPat = /^(.+)@(.+)$/;
	var specialChars = "\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars = "\[^\\s" + specialChars + "\]";
	var quotedUser = "(\"[^\"]*\")";
	var ipDomainPat = /^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom = validChars + '+';
	var word = "(" + atom + "|" + quotedUser + ")";
	var userPat = new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat = new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray = emailStr.match(emailPat);
	if (matchArray == null) { return false; }
	var user = matchArray[1];
	var domain = matchArray[2];
	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i) > 127) { return false; }
	}
	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i) > 127) { return false; }
	}
	if (user.match(userPat) == null) { return false; }
	var IPArray=domain.match(ipDomainPat);
	if (IPArray != null) {
		for (var i=1; i<=4; i++) {
			if (IPArray[i] > 255) { return false; }
		}
		return true;
	}
	var atomPat = new RegExp("^" + atom + "$");
	var domArr = domain.split(".");
	var len = domArr.length;
	for (i=0; i<len; i++) {
		if (domArr[i].search(atomPat) == -1) { return false; }
	}
	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1) { return false; }
	if (len < 2) { return false; }
	return true;
}


Il suffit ensuite de l'appeler en passant en paramètre l'adresse email.
Cette fonction retourne true en cas de validité de l'adresse (uniquement dans la syntaxe, on ne peut vérifier sa réelle exitence), false en cas d'échec :

if (!isEmail(emailatester)) {
    alert('Cette adresse email n\'est pas valide !');
}
else {
    // le code a exacuter en cas de succès

}


Simple et très efficace...
RDM38 Messages postés 2322 Date d'inscription samedi 2 mai 2009 Statut Membre Dernière intervention 19 août 2013 75
27 août 2009 à 17:54
Moi je te conseil d'utiliser le REGEX
Tuto ici ==>> https://openclassrooms.com/fr/courses
Oooooops, j'ai pas répondu au bon topic... lool

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

Posez votre question
appler dans "input" la fonction "chiffres(event)" dans l'evenement "onKeyPress"
function chiffres(event)
{
if(!event && window.event)
{
event=window.event;
}
var code = event.keyCode;
var which = event.which;
if ((code < 46 || code > 57) && code != 46 && code != 8 && code != 9 && code != 16 && code != 13)
{
event.returnValue = false;
event.cancelBubble = true;
}
if((which < 48 || which > 57) && (code < 37 || code > 40) && code != 46 && code != 8 && code != 9 && code != 16 && code != 13 || event.ctrlKey) {
event.preventDefault();
event.stopPropagation();
}
}