Rassembler plusieurs script dans une seule fonction

Fermé
mirene22 Messages postés 7 Date d'inscription vendredi 27 février 2015 Statut Membre Dernière intervention 12 mai 2015 - 8 avril 2015 à 15:49
 mirene22 - 17 avril 2015 à 12:05
Bonjour, voici mon problème : je n'arrive pas à rassembler 3 fonction JS dans une seule pour que j'arrive à mettre un boutton ONSUBMIT qui appelle cette fonction !voici mes scripts :

<script>
function checkEmail() {

    var email = document.getElementById('txtEmail');
    var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

    if (!filter.test(email.value)) {
    alert('Please provide a valid email address');
    email.focus;
    return false;
 }
}
</script>


<script>
$(document).ready(function(){
$('#v_d').blur(function(){
var email=$('.email').val();
$.post('emailverif.php',{email:email},function(donnees){
$('.afficher').html(donnees);
});
return false;
});
});
</script>


<script>
	function verifform()
  {
   	 if(document.formulaire.motdepasse1.value != document.formulaire.motdepasse.value)
    {
     alert("le mot de passe est incorrect!");
     document.formulaire.motdepasse1.focus();
     return false;
    }
}
</script>


REMARQUE : les 3 fonctions séparées fonctionnent très bien je les ai testé. merci d'avance

2 réponses

Salut,

selon vous de quoi cela viens?

vous avez une fonction javascript qui vérif l'email et renvoi false en cas de mail invalide donc pour que le formulaire marche il faut que celle fonction soit différente de false(pas true ou une valeur car la fonction ne permet de renvoyer que false)

une autre fonction en jquery qui va renvoyer l'affichage de la page lorsque le formulaire est envoyé. Regardez la description de la fonction ready() et la syntaxe de votre écriture. il s'agit d'une fonction qui s'exécute si l'objet document est vrai, donc sans considération pour le formulaire:
$(document).ready(function(){

Donc votre déclencheur(le chargement de la page?) n'est pas le bon quisque vous devez considérer l'envoi du formulaire;

Votre 3ème fonction vérifie si un mot de passe convient sauf qu'en javascript vous n'avez aucun échange avec la base de données, donc aucun moyen de connaître si l'identifiant et le mot de passe existe et coïncide.

En clair la 1ère fonction: cntôle le contenu des champs avant l'envoi.
La 2ème donne un résultat lors de l'envoi.
LA 3ème compare des informations qui ne peuvent pas être disponible.

Ce n'est pas le fait d'imbriquer les fonctions les unes dans les autres c'est votre raisonnement qui est faux(algorithme);
Séparez les 2 parties:
Vérification de l'envoi(et des conditions)
Vérification des informations de la base en comparaison des données envoyées par le formulaire;

Si vous voulez faire les 2 vous devez utiliser un langage serveur comme PHP, donc récupérer les données du formulaire envoyées vvers un script PHP ou bien utiliser les fonctions de jquery utilisant ajax qui vous permettront d'obtenir le résultat d'une requête à la base.
Le rpincipe est ici:

https://www.commentcamarche.net/contents/221-reseaux-architecture-client-serveur-a-3-niveaux
0
merci pour votre réponse
0