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 :

Click sur bouton ne marche pas [AJAX]


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Inscrit en
    Mars 2008
    Messages
    1 123
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 1 123
    Par défaut Click sur bouton ne marche pas
    Bonsoir
    j'ai une boucle qui me crée des boutons, je veux quand je clique sur un bouton j'ajoute une ligne dans mon tableau,
    chaque bouton ajout des informations précises
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    <?php
    include ("dossier_id.php");
    ?>	
    <script>
    function get_parametre(id)
    {
    alert(id);
    	$.ajax({ 
    		type : 'POST', 
    		url : 'get_parametre.php', 
    		data: 'id='+id, 
    		success : function(data){
    		alert(data);
    		}, error : function(XMLHttpRequest, textStatus, errorThrown) { alert(55);  }
    	}); 
    }
     
    </script>
     
     
    <section class="container-table">
    	<caption class="entete-table">Liste des Paramètres Analyse</caption>
     
    	<form id="frm" method="POST" class="formusimple">
    	<button type="button"  onclick="foo()">Click Me</button>
    		<?php
                    $req="SELECT * FROM parametre_analyse  WHERE existe='1' ";
                    $res=mysql_query($req);
                    while($row=mysql_fetch_array($res))
                    { ?>
     
    			<input type="submit" value="<?php echo $row['label'];?>" id="<?php echo $row['id_parametre'];?>"   onclick="get_parametre(this.id)" name="enregistrer" 
    				class="btn">
    		<?php
                    } ?>
     
    	</form>
    </section>	
     
     
    <section class="container-table">
     
    <table  name="tab"  id="tab" width="100%" cellspacing="1" class="tableau">
    	<tbody>
     
     
    	</tbody>
    </table>
    </section>
    get_parametre.php
    Code php : 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
     
     
    session_start();
    include("connexion.php");
     
    $id=$_REQUEST['id'];
     
     
    $req="SELECT * FROM parametre_analyse  WHERE existe='1'  AND id_parametre='$id' ";
    $res=mysql_query($req);
    $row=mysql_fetch_array($res);
     
     
    echo 
    	'<tr>
    		<td height="40" align="center" bgcolor="#FFFFFF">'.$row['label'].'</td>
    		<td height="40" align="center" bgcolor="#FFFFFF">'.$row['label'].'</td>
    		<td height="40" align="center" bgcolor="#FFFFFF">'.$row['designation'].'</td>
    		<td height="40" align="center" bgcolor="#FFFFFF">'.$row['prix'].'</td>
        </tr> ';

    mon problème c'est que en cliquant sur le bouton la fonction AJAX ne marche pas

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 518
    Par défaut
    si tu veux utiliser jQuery proprement, il faut d'abord enlever l'attribut onclick sur les input de type submit et écrire le code suivant :
    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
     
    $(function(){//quand le document est prêt 
    	var id;
    	function get_parametre(id){
                     console.log('le id est :'+id);//console.log() au lieu de l'alerte.
    		$.ajax({ 
    			type : 'POST', 
    			url : 'get_parametre.php', 
    			data: 'id='+id,	
    			success : function(data){
    				$('#result').remove();//supprime #result s'il existe...
    				$('#frm').after('<table id="result">'+data+'</table>');}
    			,error : function(XMLHttpRequest, textStatus, errorThrown) { console.log('erreur');  }
    		});	
    	}
     
    	$('#frm .btn').click(function(e){
    		id=$(this).attr('id');
    		console.log('ID :'+id);
    		get_parametre(id);
    		e.preventDefault();//empêcher le navigateur de suivre le lien.
    	});
    });

  3. #3
    Membre éprouvé
    Inscrit en
    Mars 2008
    Messages
    1 123
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 1 123
    Par défaut
    voici mon code
    mais ça ne marche pas
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
     
     
    <?php
    include ("dossier_id.php");
    ?>	
    <script>
    function get_parametre(id){
                     console.log('le id est :'+id);//console.log() au lieu de l'alerte.
    		$.ajax({ 
    			type : 'POST', 
    			url : 'get_parametre.php', 
    			data: 'id='+id,	
    			success : function(data){
    			alert(data);
    			//	$('#result').remove();//supprime #result s'il existe...
    			//	$('#frm').after('<table id="result">'+data+'</table>');}
    			,error : function(XMLHttpRequest, textStatus, errorThrown) { console.log('erreur');  }
    		});	
    	}
    	}
     
    	$('#frm .btn').click(function(e){
     
    		id=$(this).attr('id');
    		alert(id);
    		get_parametre(id);
    		e.preventDefault();//empêcher le navigateur de suivre le lien.
    	});
     
     
    </script>
     
     
    <section class="container-table">
    	<caption class="entete-table">Liste des Paramètres Analyse</caption>
     
    	<form id="frm" method="POST" class="formusimple">
    		<?php
                    $req="SELECT * FROM parametre_analyse  WHERE existe='1' ";
                    $res=mysql_query($req);
                    while($row=mysql_fetch_array($res))
                    { ?>
     
    			<input type="submit" value="<?php echo $row['label'];?>" id="<?php echo $row['id_parametre'];?>"    name="enregistrer"  class="btn"/>
    		<?php
                    } ?>
     
    	</form>
    </section>	
     
     
    <section class="container-table">
     
    <table  name="tab"  id="tab" width="100%" cellspacing="1" class="tableau">
    	<tbody>
     
     
    	</tbody>
    </table>
    </section>

  4. #4
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 518
    Par défaut
    Tu n'as pas mis le code dans $(function{}) comme je t'ai montré.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $(function(){
    //ton code doit être ici
    });
    Puis remplace les alertes par console.log.

  5. #5
    Membre éprouvé
    Inscrit en
    Mars 2008
    Messages
    1 123
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 1 123
    Par défaut
    merci, voici le code après changement
    même les alert n'affichent rien

    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     
     
    <?php
    include ("dossier_id.php");
    ?>	
    <script>
    $(function(){//quand le document est prêt 
    	var id;
    	function get_parametre(id){
                     console.log('le id est :'+id);//console.log() au lieu de l'alerte.
    		$.ajax({ 
    			type : 'POST', 
    			url : 'a1.php', 
    			data: 'id='+id,	
    			success : function(data){
    				//$('#result').remove();//supprime #result s'il existe...
    				//$('#frm').after('<table id="result">'+data+'</table>');}
    				alert(data);
    			,error : function(XMLHttpRequest, textStatus, errorThrown) { console.log('erreur');  }
    		});	
    	}
     
    	$('#frm .btn').click(function(e){
    	alert(5);
    		id=$(this).attr('id');
    		console.log('ID :'+id);
    		get_parametre(id);
    		e.preventDefault();//empêcher le navigateur de suivre le lien.
    	});
    });
     
    </script>
     
     
    <section class="container-table">
    	<caption class="entete-table">Liste des Paramètres Analyse</caption>
     
    	<form id="frm" method="POST" class="formusimple">
    		<?php
                    $req="SELECT * FROM parametre_analyse  WHERE existe='1' ";
                    $res=mysql_query($req);
                    while($row=mysql_fetch_array($res))
                    { ?>
     
    			<input type="submit" value="<?php echo $row['label'];?>" id="<?php echo $row['id_parametre'];?>"    name="enregistrer" 
    				class="btn">
    		<?php
                    } ?>
     
    	</form>
    </section>	
     
     
    <section class="container-table">
     
    <table  name="tab"  id="tab" width="100%" cellspacing="1" class="tableau">
    	<tbody>
     
     
    	</tbody>
    </table>
    </section>

  6. #6
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 518
    Par défaut
    Tu n'as pas des erreurs dans la console du navigateur?

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

Discussions similaires

  1. Clic droit sur eclipse ne marche pas
    Par rnan dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 29/05/2007, 16h26
  2. [Formulaire]Assistance Sur Bouton Ne Souvre Pas
    Par Patrick27 dans le forum IHM
    Réponses: 1
    Dernier message: 25/03/2007, 20h54
  3. Ouvrir nouvelle fenêtre Outlook après click sur bouton
    Par n@n¤u dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 14/06/2006, 17h23
  4. click sur bouton en pressant Enter
    Par graphicsxp dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 06/06/2006, 10h24
  5. click sur bouton ou changer dossier explorer
    Par nek_kro_kvlt dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 10/03/2005, 21h25

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