J'ai 2 fonctions et ne voudrais en faire qu'1 seule

Signaler
Messages postés
140
Date d'inscription
jeudi 21 septembre 2000
Statut
Membre
Dernière intervention
16 août 2012
-
Messages postés
140
Date d'inscription
jeudi 21 septembre 2000
Statut
Membre
Dernière intervention
16 août 2012
-
Bonjour à tous,

Je vérifie, avec un JS, le remplissage des champs, des boutons, l'affichage du menu déroulant, et c'est OK.

Par contre, je n'arrive pas à vérifier la syntaxe du mail pour ce même formulaire.

Mais si je n'ai uniquement que le JS pour ctrl du mail, c'est ok.

Je ne suis pas arrivé à les mettre ensemble.
- j'ai la fonction pour vérifier le remplissage des champs.
- j'ai une autre fonction pour contrôler le mail.

Je suppose qu'on peut les mettre ensemble ! parce que dans la <form....> je ne peut mettre qu'un onclick, ou on... (qq chose)


Pourriez-vous m'aider ?

Merci d'avance.

6 réponses

Messages postés
414
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
23 septembre 2014

Bonjour

Un exemple de code?
Messages postés
140
Date d'inscription
jeudi 21 septembre 2000
Statut
Membre
Dernière intervention
16 août 2012

Voilà mes codes :
<hr size= "2" width="100%" />Tu peux, si tu veux, voir et essayer http://jl.bouchez.free.fr/index.php?page=1&id=Contact. En ne mettant que des lettres ou chiffres dans le champ "Mail", ça passe comme une lettre à la poste.
<hr size="2" width="100%" />
Celui qui vérifie les champs :
<script type ="text/javascript">
<!--
function no_error()
{ return true; }
window.onerror=no_error;
//-->
</script>
</head>

<script language="JavaScript" type="text/javascript">
<!--
function formCheck(formobj){
    var fieldRequired = Array("nom", "mail", "moteur", "profession", "precision", "sujet", "message");
    var fieldDescription = Array("Votre nom", "Votre mail", "Quelle est votre profession", "Comment avez-vous connu ce site", "Précisez", "Sujet", "Message");
    var alertMsg = "Veuillez compléter les champs suivants qui sont obligatoires avant d'envoyer!\n";
   
    var l_Msg = alertMsg.length;
   
    for (var i = 0; i < fieldRequired.length; i++){
        var obj = formobj.elements[fieldRequired[i]];
        if (obj){
            switch(obj.type){
            case "select-one":                if (obj.selectedIndex -1 || obj.options[obj.selectedIndex].text ""){
                    alertMsg += " - " + fieldDescription[i] + "\n";
                }
                break;
            case "select-multiple":
                if (obj.selectedIndex == -1){
                    alertMsg += " - " + fieldDescription[i] + "\n";
                }
                break;
            case "text":
            case "textarea":                if (obj.value "" || obj.value null){
                    alertMsg += " - " + fieldDescription[i] + "\n";
                }
                break;
            default:
            }
            if (obj.type == undefined){
                var blnchecked = false;
                for (var j = 0; j < obj.length; j++){
                    if (obj[j].checked){
                        blnchecked = true;
                    }
                }
                if (!blnchecked){
                    alertMsg += " - " + fieldDescription[i] + "\n";
                }
            }
        }
    }

    if (alertMsg.length == l_Msg){
        return true;
    }else{
        alert(alertMsg);
        return false;
    }
}
// -->
</script>
<form method="post" action="./index.php?page=10&amp;id=Result_Contact" name="formcheck" onsubmit="return formCheck(this);">
<hr size="2" width="100%" />
Et celui qui vérifie le mail :
<!--DEBUT DU SCRIPT-->
<SCRIPT LANGUAGE="JavaScript">
/*
SCRIPT EDITE SUR L'EDITEUR JAVASCRIPT
http://www.editeurjavascript.com
*/
function Verifmail(formulaire)
    {
    adresse = formulaire.adresse_email.value;
    var place = adresse.indexOf("@",1);
    var point = adresse.indexOf(".",place+1);
    if ((place > -1)&&(adresse.length >2)&&(point > 1))
        {
        formulaire.submit();
        alert('E-mail valide!!');
        return(true);
        }
    else
        {
        alert('Entrez une adresse e-mail valide!!');
        return(false);
        }
    }
</SCRIPT>
<!-- FIN DU SCRIPT-->
<form action="#" onSubmit="return(Verifmail(this))">

 
Messages postés
243
Date d'inscription
vendredi 24 novembre 2006
Statut
Membre
Dernière intervention
21 décembre 2007
2
Salut
ajoutes cette fonction

function verifier(form)
{
    if(Verifmail(form) && formCheck(form))
    {
       return true;
    }
    else
    {
       return false;
    }
}

<form method="post"
action="./index.php?page=10&amp;id=Result_Contact" name="formcheck"
onsubmit="return verifier(this);">

Messages postés
140
Date d'inscription
jeudi 21 septembre 2000
Statut
Membre
Dernière intervention
16 août 2012

J'ai essayé mais ça ne marche toujours pas.
Il n'y a aucune erreur.

Mais ne peut-on pas mettre la fonction de la vérification du mail dans celle de la vérif du formulaire ?

 
Messages postés
243
Date d'inscription
vendredi 24 novembre 2006
Statut
Membre
Dernière intervention
21 décembre 2007
2
Salut
Je n'ai pas testé cette fonction et je ne suis pas sur qu'elle marche

function formCheck(formobj){
    var fieldRequired = Array("nom", "mail", "moteur", "profession", "precision", "sujet", "message");
    var fieldDescription = Array("Votre nom", "Votre mail", "Quelle est votre profession", "Comment avez-vous connu ce site", "Précisez", "Sujet", "Message");
    var alertMsg = "Veuillez compléter les champs suivants qui sont obligatoires avant d'envoyer!\n";
  
    var l_Msg = alertMsg.length;
  
    for (var i = 0; i < fieldRequired.length; i++){
        var obj = formobj.elements[fieldRequired[i]];
        if (obj){
            switch(obj.type){
            case "select-one":                if (obj.selectedIndex -1 || obj.options[obj.selectedIndex].text ""){
                    alertMsg += " - " + fieldDescription[i] + "\n";
                }
                break;
            case "select-multiple":
                if (obj.selectedIndex == -1){
                    alertMsg += " - " + fieldDescription[i] + "\n";
                }
                break;
            case "text":
            case "textarea":                if (obj.value "" || obj.value null){
                    alertMsg += " - " + fieldDescription[i] + "\n";
                }
                break;
            default:
            }
            if (obj.type == undefined){
                var blnchecked = false;
                for (var j = 0; j < obj.length; j++){
                    if (obj[j].checked){
                        blnchecked = true;
                    }
                }
                if (!blnchecked){
                    alertMsg += " - " + fieldDescription[i] + "\n";
                }
            }
        }
    }
    adresse = formulaire.adresse_email.value;
    var place = adresse.indexOf("@",1);
    var point = adresse.indexOf(".",place+1);
    if ((place > -1)&&(adresse.length >2)&&(point > 1) && (alertMsg.length == l_Msg))
        {
        formulaire.submit();
        alert('E-mail valide!!');
        return(true);
        }
    else
        {
        alert(alertMsg);
        alert('Entrez une adresse e-mail valide!!');
        return(false);
        }
}
Messages postés
140
Date d'inscription
jeudi 21 septembre 2000
Statut
Membre
Dernière intervention
16 août 2012

Et ça ne marche pas.

Je vais essayé autre chose.