montre ton code ...
montre ton code ...
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Le voilà :
Code jscript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 if(document.formdept) { var str = document.formdept.depart.value; var strim=str.replace(/[^a-z]/gi, ''); $.ajax({ type: "POST", url: "validDept.php?id=depart", data: {"term":document.getElementById('depart').value}, success: function(term){ window['trouve']=term; alert(window['trouve']); }}); if(strim=="" || window['trouve']=="false") { alert("Veuillez saisir un nom de DEPARTEMENT valide"); return false; } else if (formdept.checkbtm.checked==false && formdept.checkbts.checked==false && formdept.checkbta.checked==false) { alert("Veuillez cocher une durée"); return false; } else return true; }
heu ...
le reste n'est pas dans le callback ... donc faut pas s'etonner !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 success: function(term){ window['trouve']=term; alert(window['trouve']); }});
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Mais je ne peux pas passer tout le reste de mon code dans le callback ??
ben si ...
ou alors appelle une fonction ...
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
J'ai essayé en déplaçant mon code dans le callback mais sa ne marche pas. Je vais essayer de passer par une fonction
Je n'arrive pas à passer une fonction à l'intérieur de mon success. J'ai essayé cela mais sans résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 function Valid() { if(document.formdept) { var str = document.formdept.depart.value; var strim=str.replace(/[^a-z]/gi, ''); $.ajax({ type: "POST", url: "validDept.php?id=depart", data: {"term":document.getElementById('depart').value}, success: function(term){ window['trouve']=term; ValidTotal(term,strim); }}); } function ValidTotal(term, strim) { if(strim=="" || window['trouve']=="false") { alert("Veuillez saisir un nom de DEPARTEMENT valide"); return false; } else if (formdept.checkbtm.checked==false && formdept.checkbts.checked==false && formdept.checkbta.checked==false) { alert("Veuillez cocher une durée"); return false; } else return true; } }
tu n'as plus besoin de variable globale ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 function Valid() { if(document.formdept) { var str = document.formdept.depart.value; var strim=str.replace(/[^a-z]/gi, ''); $.ajax({ type: "POST", url: "validDept.php?id=depart", data: {"term":document.getElementById('depart').value}, success: function(term){ ValidTotal(term,strim); } }); } function ValidTotal(a, b) { if(b=="" || a =="false") { alert("Veuillez saisir un nom de DEPARTEMENT valide"); return false; } else if (formdept.checkbtm.checked==false && formdept.checkbts.checked==false && formdept.checkbta.checked==false) { alert("Veuillez cocher une durée"); return false; } else return true; } }
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
J'ai essayé ton code mais cela ne marche pas. Aucune de mes conditions n'est testé![]()
as tu testé les valeurs de a et b dans la fonction ?
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
J'ai testé dans ValidTotal(a,b):mais rien ne s'affiche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part alert(a);alert(b);
New POST: Rien ne s'affiche sous Firefox mais les valeurs s'affiche bien sous IE
commence par mettre de l'ordre dans ton code ...
tu utilises jquery ...
pareil pour tes
Code : Sélectionner tout - Visualiser dans une fenêtre à part data: {"term":$('#depart').val()},
etc
Code : Sélectionner tout - Visualiser dans une fenêtre à part var str = document.formdept.depart.value;
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
et pour etre coherant tous les documents. par $(...)
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Pour mon formulaire formdept, est-ce que ça s'écrit bien comme cela ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if($('#formdept') { var str = $('#formdept.depart').val();
il n'a pas d'id ton input ?
montre le html de l'input ...
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Il n'en avait pas. J'ai donc mis formdept comme id de mon formulaire.
depart est l'id de mon input dans mon formulaire formdept
Bonjour,
Vous n'êtes pas obligé de passer par le formulaire si votre input a un id :
Code : Sélectionner tout - Visualiser dans une fenêtre à part $('#depart')
D'accord. Mon code ne passe toujours pas dans ma fonction ValidTotal(a,b)
Code jscript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 if($('#formdept')) { var str = $('#depart').val(); var strim=str.replace(/[^a-z]/gi, ''); $.ajax({ type: "POST", url: "Config/PHP/Validator.php?id=depart", data: {"term":$('#depart').val()}, success: function(term){ ValidTotal(term, strim); } }); } function ValidTotal(a, b) { alert(a);alert(b); if(b=="" || a=="false") { alert("Veuillez saisir un nom de DEPARTEMENT valide"); return false; } else if (formdept.checkbtm.checked==false && formdept.checkbts.checked==false && formdept.checkbta.checked==false) { alert("Veuillez cocher une durée"); return false; } else return true; }
La fonction de rappel liée à success est appelée automatiquement par jQuery et ce n'est pas toi qui définit les paramètres qui lui sont passés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part success: function(term, strim){...}
Donc dans ton code, tu réaffectes la variable strim avec une valeur qui n'est pas celle que tu crois.
fonctionnera mieux !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 success: function(term){ ValidTotal(term); }
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
Partager