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 :

Exécuter deux fonctions pour un bouton


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Par défaut Exécuter deux fonctions pour un bouton
    Bonjour,


    je vous explique mon problème , j'ai une form pour upload un fichier et une textarea avec du texte .

    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
    <script type="text/javascript">
    function nouvellePublication(){
    	//fintest
    	var publication = $("#publication").val();
    	$('#picture_post').submit();
    	if(publication != ""){
    		var dataArray = $("#img_input_title").val().split('\\');
    		var data ={ name : dataArray[dataArray.length-1]};
    		alert( dataArray[dataArray.length-1]);
    		data = { post : publication,hasPicture : 1 };
    		$.ajax({
    			url : "nouvelle_publication.php",
    			data : data,
    			complete : function(xhr, result){
    				if(result != "success") return; 
    				var response = xhr.responseText;
    				$("#publication").val("");
    			}
    		});
    	}
    }
    </script>
    Voici mon code JS , maintenant le code HTML

    Code html : 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
    <table id="post_border" >
    	<tr>
    		<td>
    			<textarea id="publication" cols="65" rows="4" maxlength="255" placeholder="Exprimez-vous"></textarea>
    		</td>
    	</tr> 
    	<tr>
    		<td id="submit_post">
    			<input type="button" value="Publier" onclick="javascript:nouvellePublication()"/>
    		</td>
    	</tr>
    </table>
    </div>
    <div id="tab2">
    	<table id="post_border">
    		<tr>
    			<td>
    				<form enctype="multipart/form-data" method="post" action="upload_picture.php" id="picture_post" >
    					<input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
    		                        <input class="picture_description" name="picture_title_input" type="text" size="65" value="Titre" onfocus="javascript:if(this.value=='Titre')this.value='';" onblur="javascript:if(this.value=='')this.value='Titre';" />
    		                         <textarea class="picture_description" name="picture_description" cols="65" rows="2" maxlength="255" placeholder="Description"></textarea>
    					<input id="img_input_title" name="uploaded_picture" type="file" size="40"/> (2Mo max.)
    					<input type="button" value="Publier"/>
    				</form>
    			</td>
    		</tr>
    	</table>
    </div>

    Le seul problème que j'ai , et quand j'ai rajouter le submit dans ma fonction nouvellePublication , quand je clique sur le premier bouton publier , le submit s'execute mais le reste ne s'affiche pas,il ne faut pas tenir compte du deuxieme bouton publier , j'aimerai que les deux traitements se fasse sur le premier.

    Merci de votre aide

    Cordialement,
    Ketaaa

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Il y a 2 fois <table id="post_border">, un ID doit être unique !

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Par défaut
    apres correction de l'id qui était une erreur de ma part , les deux fonctions ne s’exécute toujours pas , quand je met le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $("#picture_post").submit();
    dans ma fonction "nouvellePublication()" , le submit() est fait mais le reste ne s’exécute pas.

    Merci d'avance

  4. #4
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2012
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Août 2012
    Messages : 26
    Par défaut
    Hello,

    tu envoies bien ton formulaire avec submit(), mais pas en AJAX puisque tu ne bloque pas le comportement par défaut de ce dernier (de plus submit() n'a aucun callback).

    explore donc malsup's form plugin (méthodes ajaxForm et ajaxSubmit)

  5. #5
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    Bonjour,
    si tu submit(), tu recharges la page.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Par défaut
    Citation Envoyé par NoSmoking Voir le message
    Bonjour,
    si tu submit(), tu recharges la page.
    Merci je comprends alors pourquoi ca ne marche pas , donc si j'ai bien compris je dois executer ma fonction ajax dans un callback?

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 62
    Par défaut
    je vais essayer de me renseigner alors , n’hésitez pas si vous avez d'autre conseil a me donner merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Deux fonctions sur un bouton ?
    Par LeFoureur dans le forum VB.NET
    Réponses: 2
    Dernier message: 15/02/2012, 16h42
  2. Réponses: 2
    Dernier message: 21/02/2011, 17h27
  3. Utiliser une fonction pour un bouton
    Par jlg_47 dans le forum C++/CLI
    Réponses: 13
    Dernier message: 20/10/2010, 21h22
  4. deux actions pour un bouton submit
    Par ranell dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 07/12/2007, 07h30
  5. deux actions pour un bouton
    Par allhambra dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/07/2007, 11h34

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