[jquery] submit

submit [jquery] - HTML/CSS - Programmation

Marsh Posté le 02-10-2009 à 12:07:09    

bonjour mon probléme :
 
le formulaire se soumet tout le temps..
 

Code :
  1. $("#form_coclico" ).submit(function(){
  2.  var su;
  3.  var coclico = $("#id_coclico" ).val();
  4.  var campagne = $("#campagne" ).val();
  5.  $.post('ajax/ajax_test_coclico.php',{
  6.  coclico:coclico,campagne:campagne},
  7.  function(data){
  8.      if (data=='1')
  9.      {
  10.      su = 1;
  11.      }
  12.      else
  13.      {
  14.      su = 0;
  15.      }
  16.  });
  17.  alert(su);
  18. if(su==1){
  19. return true;
  20. }
  21. else{
  22. return false;
  23. }
  24. });
  25. });


 
merci de votre aide
 
l ajax se fait bien.j'ai vérifié avec la console firebug mais la variable su reste indéfini. si je l initialise a 0 elle reste a 0 malgré le fait que je lui dise de prendre 1 dans la fonction $.post .


Message édité par d@kn1ko le 02-10-2009 à 13:36:04
Reply

Marsh Posté le 02-10-2009 à 12:07:09   

Reply

Marsh Posté le 02-10-2009 à 13:09:47    

avant toute chose,

Code :
  1. if(su==1){
  2. return true;
  3. }
  4. else{
  5. return false;
  6. }

:pfff:  
 
 
sinon, ca me semble normal, tu es dans un scope complètement différent... pour palier à ca, je te conseille de regarder du coté du plugin jquery forms (http://malsup.com/jquery/form/)
 

Reply

Marsh Posté le 02-10-2009 à 13:35:21    

pataluc a écrit :

avant toute chose,

Code :
  1. if(su==1){
  2. return true;
  3. }
  4. else{
  5. return false;
  6. }

:pfff:  
 
 
sinon, ca me semble normal, tu es dans un scope complètement différent... pour palier à ca, je te conseille de regarder du coté du plugin jquery forms (http://malsup.com/jquery/form/)
 


 
je comprend pas bien ce qui est faux.
 
true le form est soumit false non
 
j ai un autre code qui fonctionne tres bien,

Code :
  1. form.submit(function(){
  2. if (ma_fonction())
  3. {
  4. return true;
  5. }
  6. else
  7. {
  8. return false;
  9. }
  10. });

Message cité 1 fois
Message édité par d@kn1ko le 02-10-2009 à 13:38:49
Reply

Marsh Posté le 02-10-2009 à 13:39:53    

d@kn1ko a écrit :


 
je comprend pas bien ce qui est faux.
 
true le form est soumit false non


ce n'est pas faux c'est juste inutile (je me suis retenu de dire "débile" ^^). tu fais en 6 lignes ce qui tient en une seule :

Code :
  1. return (su==1);

mais ce n'est pas la le pb, c'est juste une remarque.

Reply

Marsh Posté le 02-10-2009 à 13:50:41    

effectivement j'ai loupé un truc
 
oue je viens de me dire qui faudrait peut etre que je mette un return dans ma fonction data de $.post pour recup la valeur de su.  :D
 
mais je vois pas comment faire


Message édité par d@kn1ko le 02-10-2009 à 14:38:06
Reply

Marsh Posté le 02-10-2009 à 14:10:11    

pour qu'on se comprenne bien, au moment ou le user valide le form, tu fais un appel ajax pour vérifier qqchose et tu veux qu'en fonction du résultat, la validation du formulaire soit interrompue ou pas.
 
c'est bien ca?

Reply

Marsh Posté le 02-10-2009 à 14:14:25    

je te conseille une fois de plus de regarder de ce coté la: http://malsup.com/jquery/form/#code-samples le plugin form de jquery gère justement ce genre de truc.

Reply

Marsh Posté le 02-10-2009 à 14:39:39    

pataluc a écrit :

pour qu'on se comprenne bien, au moment ou le user valide le form, tu fais un appel ajax pour vérifier qqchose et tu veux qu'en fonction du résultat, la validation du formulaire soit interrompue ou pas.
 
c'est bien ca?


 
exactement.
 
je vais regarder ce plugin
 
au pire je peux faire l'inverse ma fonction ajax sur click et dans la fonction mettre le submit ?

Reply

Marsh Posté le 02-10-2009 à 14:43:46    

ouep ca doit pouvoir marcher, mais ca me parait pas super sexy.

Reply

Marsh Posté le 02-10-2009 à 14:54:35    

pataluc a écrit :

ouep ca doit pouvoir marcher, mais ca me parait pas super sexy.


 
je vais looker ce plugin


Message édité par d@kn1ko le 02-10-2009 à 15:00:55
Reply

Marsh Posté le 02-10-2009 à 14:54:35   

Reply

Marsh Posté le 02-10-2009 à 15:27:54    

j en suis la mais c est le même problème que précédemment fo que je recup true or false de showrequest:
 
mais en faite c est pas ce que je veux.  :D  
 

Code :
  1. var options = {beforeSubmit:showRequest,type:'post',dataType:'xml'};
  2. $("#form_coclico" ).ajaxForm(options);
  3. });
  4. function showRequest(){
  5.  alert("test" );
  6.  var coclico = $("#id_coclico" ).val();
  7.  var campagne = $("#campagne" ).val();
  8.  $.post('ajax/ajax_test_coclico.php',{
  9.  coclico:coclico,campagne:campagne},
  10.  function(data){
  11.      if (data=='1'){
  12.      alert(data);
  13.        return true;
  14.        }
  15.        else
  16.        {
  17.        return false;
  18.        }
  19.  });
  20. }


Message édité par d@kn1ko le 02-10-2009 à 15:36:46
Reply

Marsh Posté le 02-10-2009 à 15:39:59    

dsl j'ai fait l'amalgame entre 2 plugin jquery: regarde de ce coté: http://docs.jquery.com/Plugins/Validation (cf la première réponse http://stackoverflow.com/questions [...] ng-a-form)

Reply

Marsh Posté le 02-10-2009 à 17:06:41    

pataluc a écrit :

dsl j'ai fait l'amalgame entre 2 plugin jquery: regarde de ce coté: http://docs.jquery.com/Plugins/Validation (cf la première réponse http://stackoverflow.com/questions [...] ng-a-form)


 
 
merci  
 
mais je pense que je vais abandonner l'affaire.
c est vraiment de la bidouille pour réussir ce que je veux faire je pense et ca met pas vraiment utile.
 
le problème c est que le temps que l ajax soit executé le formulaire est soumis..


Message édité par d@kn1ko le 02-10-2009 à 17:06:59
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed