[JavaScript]une idée ?

Fermé
bezourox Messages postés 729 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 19 janvier 2013 - 16 juil. 2007 à 10:01
 Alain42 - 24 juil. 2007 à 15:06
Bonjour à tous
Voila le code qui ne fonctionne pas :

<script type='text/javascript'>
function confirmation(frm)
{
	var mess = '';
	var nom_du_qcm = document.parametres.nom_qcm.value;
	if (nom_du_qcm == '') mess += 'ERREUR : Renseignez correctement le nom de votre QCM. \n';
	if (mess != '') 
	{
		alert (mess);
		return false;
	}	
	else
	{
		return true;	
	}
}
</script>


Lorsque le champs de texte qui a pour name nom_qcm n'est pas renseigné par l'utilisateur, un popup devrait afficher le message d'erreur, ce qui n'est pas le cas .

Je vois pas d'ou vient le problème .
Des suggestions ?

9 réponses

Linux67 Messages postés 306 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 7 juillet 2012 123
16 juil. 2007 à 10:09
Salut, essai avec le code suivant :

<script type='text/javascript'>
function confirmation(frm)
{
	var nom_du_qcm = document.parametres.nom_qcm.value;
	if (nom_du_qcm == '') 
	{
		alert ('ERREUR : Renseignez correctement le nom de votre QCM. ');
		document.parametres.nom_qcm.value.focus();
		return false;
	}	
	else
	{
		return true;	
	}
}
</script>


@++
0
Jean-François Pillou Messages postés 18707 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023 63 267
16 juil. 2007 à 10:10
Déjà je ne comprends pas pourquoi tu passes un paramètre frm que tu n'utilises pas ...
0
bezourox Messages postés 729 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 19 janvier 2013 143
16 juil. 2007 à 10:11
euh tout simplement parce que j'ai recup ce morceau de code et que j'essai de l'utiliser comme je peux :)
le javascript c'est loin d'être ma tasse de thé, même tres loin ^^
0
bezourox Messages postés 729 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 19 janvier 2013 143
16 juil. 2007 à 10:42
merci Linux pour ton aide .
simple question , c'est quoi ce value.focus() a la fin ???
comment faire pour utiliser ta solution si j'ai d'autres champs texte a vérifier ?
comment faire si j'ai des butons a vérifier ?
0

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

Posez votre question
magicwill Messages postés 93 Date d'inscription dimanche 9 février 2003 Statut Membre Dernière intervention 10 juillet 2008 3
16 juil. 2007 à 11:51
Salut...

voici un exemple qui te permet de verifier que ce que tu as saisi dans un champs de texte est bien hexadecimal.

//verifie que ce qui a ete saisi est en hexadecimal
function checkHexNum(entree) {
	var int_format =  /^[0-9A-Fa-f]*$/;
	if (!int_format.test(entree.value)) {
		entree.focus();
		return false;
	}
	return true;
}



Ca c'est la fonction... et pour l'HTML, tu fais:

<input type=text size=45 maxlength=5 onChange="checkHexNum(this);">


Enfin, tout du moins quelque chose du genre pour l'HTML...

Bye.
0
merci magicwill mais je ne suis pas sur que cette fonction me soit d'une grande utilité .
en effet je ne cherche pas a vérifier quel type de contenu contient la variable mais uniquement si elle contient une valeur ou non .

j'ai testé toutes vos solutions, et elles ne marchent pas .
la méthode de Linux67 marche, et encore je dois enlever la ligne document.parametres.nom_qcm.value.focus(); sinon le popup m'affiche le message d'erreur mais des que je ferme la popup je passe a la page suivante ^^
et cette méthode ne marche que si j'ai qu'un champs a vérifier, ce qui n'est pas mon cas ... :s
0
Linux67 Messages postés 306 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 7 juillet 2012 123
16 juil. 2007 à 12:51
Le value.focus permet de placer le pointeur dans le champs où il manque l'information.

Si tu as d'autres champs à vérifier tu as quelques petits modfications à faire :

var nom_du_qcm = document.parametres.nom_qcm.value;
if (nom_du_qcm == '')

Tu devras changer le nom de la variable et son chemin. Le nom tu dois le reprendre dans le "if" et le chemin tu dois le reprendre dans la boucle.
0
magicwill Messages postés 93 Date d'inscription dimanche 9 février 2003 Statut Membre Dernière intervention 10 juillet 2008 3
24 juil. 2007 à 14:59
Désolé, j'avais mal compris...
Pour savoir si un champs est vide ou non...donc, c'est ça:

//verifie la presence de texte
function checklib(entree) {
	var present =  /^\s$/;
	if (entree.value == null || entree.value == '' ||  present.test(entree.value) ) {
		alert("pas de texte!!!");
		entree.focus();
		return false
	}
	return true
}



A+
0
Dans l'exemple de Linux la ligne qui ne marche pas:
document.parametres.nom_qcm.value.focus();


doit être remplacée par:

document.parametres.nom_qcm.focus();


C'est .value qui est en trop.
0