[JavaScript]une idée ?

bezourox Messages postés 730 Date d'inscription   Statut Membre Dernière intervention   -  
 Alain42 -
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 ?
Configuration: Windows XP
Firefox 2.0.0.4

9 réponses

  1. Linux67 Messages postés 307 Statut Membre 123
     
    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
  2. Jean-François Pillou Messages postés 18961 Date d'inscription   Statut Webmaster Dernière intervention   63 308
     
    Déjà je ne comprends pas pourquoi tu passes un paramètre frm que tu n'utilises pas ...
    0
  3. bezourox Messages postés 730 Date d'inscription   Statut Membre Dernière intervention   143
     
    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
  4. bezourox Messages postés 730 Date d'inscription   Statut Membre Dernière intervention   143
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. magicwill Messages postés 94 Statut Membre 3
     
    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
  7. bezourox
     
    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
  8. Linux67 Messages postés 307 Statut Membre 123
     
    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
  9. magicwill Messages postés 94 Statut Membre 3
     
    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
  10. Alain42
     
    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