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 :

Lien dans une page generée a la volée


Sujet :

jQuery

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 306
    Points : 106
    Points
    106
    Par défaut Lien dans une page generée a la volée
    Bonjour,

    Dans mon code ci-dessous, comment faire pour que le lien interne qui apparait après avoir cliqué sur 'lien numéro 1' soit fonctionnel ?


    Voici mes sources :
    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
    <script type="text/javascript">
    $(document).ready(function()
    						   {
    							$("a").bind('click', function()
    																{
     
    																var id = $(this).attr("id");								
    																var data = {send:id};
     
    																$.ajax({
    																	   url : "ff.php",
    																	   data : data,
    																	   complete : function(xhr, result)
    																			{
    																			var response = xhr.responseText;	
    																			$("#espaceMaj").html(response);
    																			}
     
    																	   });
    																});							   
    						   });
     
     
    </script>
    </head>
    <body>
     
    <div id="liens">
    <a href="#" id="lien1">Lien numéro 1</a> &nbsp;&nbsp;&nbsp;
    <a href="#" id="lien2">Lien numéro 2</a>
    </div>
     
     
    <div id="espaceMaj">Bienvenue sur mon site</div>
    Ceci est la page interrogée par la requete Ajax (ff.php) :

    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
    <?php
    $send = $_GET["send"];
     
     
    if($send == "lien1")
            {
        print("Vous avez cliqué sur lien 1 <br /><a href=\"#\" id=\"lien4\">Faire apparaitre lien 4</a>");
        }
    elseif($send == "lien2")
            {
        print("<p>Vous avez cliqué sur lien 2<p/>");
        }
    elseif($send == "lien4")
            {
            print("<a href=\"#\" id=\"lien2\">Revenir sur lien2</a>");      
            }
    else
            {
        print("Rien du tout");
        }   
    ?>
    Merci d'avance pour vos réponses

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2011
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Philippines

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2011
    Messages : 89
    Points : 142
    Points
    142
    Par défaut
    Il faut que tu utilises "live" plutôt que "bind" pour que les éléments créés dynamiquement soient pris en compte.

    Tu peux aussi utiliser "load" pour ta requête Ajax vu que ton unique traitement est de remplir un bloc.

    Voilà comment je l'aurais écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $(document).ready(function ()
    	var espaceMaj = $("#espaceMaj");
    	$("a").live("click", function () {
    		var id = $(this).attr("id") || "";
    		espaceMaj.load("ff.php", { "send": id });
    		return false; // Pour éviter le retour en haut de page en cas de croliing
    	});
    });

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 306
    Points : 106
    Points
    106
    Par défaut
    Citation Envoyé par MrPringle Voir le message
    Il faut que tu utilises "live" plutôt que "bind" pour que les éléments créés dynamiquement soient pris en compte.
    Super ca marche merci beaucoup ^^ Ta solution m'aura permis de reprendre mon bouquin dans les mains et me rappeller qu'il existe aussi "one" que j'avais oublié

    Merci pour ton aide & conseil

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

Discussions similaires

  1. Comment mettre un lien dans une page vers une autre partie de la même page?
    Par Longway dans le forum Dépannage et Assistance
    Réponses: 4
    Dernier message: 12/10/2006, 19h58
  2. [TWebBrowser] Comment trouver tous les liens dans une page ?
    Par xenos dans le forum Composants VCL
    Réponses: 1
    Dernier message: 16/01/2006, 00h36
  3. Réponses: 7
    Dernier message: 14/09/2005, 11h50
  4. Verrouiller un lien dans une page
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 5
    Dernier message: 25/02/2003, 17h56

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