IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Ajax lors d'un submit


Sujet :

jQuery

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Ajax lors d'un submit
    Bonjour.

    J'utilise struts 2 mais souhaite gerer l'ajax "manuellement", c'est à dire sans aucun plugin (jar) supplémentaire, (struts-jquery ou dojo).

    J'ai donc un formulaire qui lance une action struts lors du submit.

    Je souhaite lors de la validation du formulaire, déclencher une action ajax pour afficher par exemple une barre de progression le temps que l'action s'exécute et avant que j'arrive à la page suivante.

    Dans l'exemple (pour plus de simplicité), je souhaite afficher tout simplement un DIV suite à la validation du formulaire.

    JSP :
    Code jsp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <s:form method="POST" action="validerConnexion" namespace="/">
         <!--<s:textfield name="utilisateur.utCode" label="%{getText('label.utilisateur.utCode')}"  onblur="johannjs();"/>-->
         <s:textfield name="utilisateur.utCode" label="%{getText('label.utilisateur.utCode')}" />
    ...

    JAVASCRIPT :
    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
    $(document).ready(function(e) {
    	$( "#monsubmitjquery" ).click(function(e) {
    	//	 e.preventDefault();
     		johannjs();
     	//	return false;
     
     		// si return false : la fonction johannjs (ajax) sort en erreur et le formulaire est submitté
     		//si pas return false : elle s'exécute bien mais le formulaire n'est pas submitté.
     
    	});
     
    });
     
    function johannjs() {
    	var data = $('#validerConnexion').serialize();
    	$.ajax({
    		type : "POST",
    		url : "/DMIST/validerConnexionAjax.action",
    		data : data,
    		beforeSend : function(response) {
    			$('#div2').html('coucou beforeSend');
    		},
    		success : function(response) {
    			$('#div2').html(response);
    		},
    		error : function(e) {
    			alert('Error: ' + e);
    		}
    	});
    }
    Comme indiqué dans le javascript, je n'arrive pas à exécuter l'ajax ET submitter le formulaire.
    J'ai lu que cela pouvait venir du fait que l'évènement "onclick" attendait un "return false".
    Le problème que j'ai :
    si je mets "return false" : la fonction johannjs (ajax) sort en erreur et le formulaire est submitté
    si je ne mets pas "return false" : elle s'exécute bien mais le formulaire n'est pas submitté.

    Y-aurait-il une solution?

    Pour votre information, ma foction ajax fonctionne très bien si la déclenche sur l'évènement onBlur d'un élément (textfield) du formulaire.

    Merci d'avance.
    Johann
    Dernière modification par Bovino ; 15/11/2013 à 11h26. Motif: Merci d'indiquer le langage utilisé ([code=xxx]) pour activer la coloration syntaxique !

Discussions similaires

  1. actualiser une Div par ajax lors d'un changement coté serveur
    Par dajij dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 19/08/2008, 18h17
  2. Afficher un message d'attente lors d'un submit
    Par lodan dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/04/2008, 15h01
  3. Réponses: 2
    Dernier message: 22/11/2007, 02h23
  4. vérification lors d'1 submit
    Par zimotep dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 21/08/2006, 11h07
  5. [FORM] ne pas envoyer tout lors d'un submit
    Par pmartin8 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 08/12/2005, 20h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo