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 :

Charger select avec jquery


Sujet :

jQuery

  1. #1
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut Charger select avec jquery
    Bonjour,

    j'ai une fonction en ajax faite avec jquery qui fonctionne, elle consiste a faire apparaitre un second menu deroulant suivant le choix du premier menu deroulant donc sur le principe ca marche tres bien sauf que je veux l'intégrer dans une admin et donc je récupére l'element sélectionné de mon premier menu déroulant via une bdd sauf que mon second menu s charge pas.

    Donc j'aimerais savoir comment faire pour charger mon second menu merci vous.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $(function(){
    	$("select#select_first").change(function(){
    		$.getJSON("ajax.php",{id: $(this).val(),selec : "1"}, function(j){
    			var options = '';
    			for (var i = 0; i < j.length; i++) {
    				options += '<option value="' + j[i].valeur + '">' + j[i].nom_galerie + '</option>';
    				var id_galerie = j[i].id;
    			}
    			$("#select_second").html(options);
    		})
    	})			
    })

  2. #2
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Si tu mets le même code dans deux fichiers différents qui ne sont pas de le même répertoire et que le fichier ajax.php est unique (c'est-à-dire qu'il est présent uniquement dans la partie publique) alors c'est une simple erreur d'URL/de liaison avec le fichier PHP

  3. #3
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Je comprend pas trop ce que tu me dis, je suis d'accord que se code marche tres bien a même la page et donc son url de laison est bonne sauf que la ma fonction utilise ca ".change" est donc je penser que pour qu'il fasse l'action il devait voir un chagement du select alors que moi quand la page se load mon select est deja possitionner sur la valeur et donc il devrai faire apparaitre le second champ.

    Merci a toi

  4. #4
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    C'est simple : tu utilises ajax.php qui est dans le même répertoire que ton fichier. Là tu utilises la même fonction dans une partie admin. Ton code laisse sous-entendre que tu as un autre fichier ajax.php pour ta partie admin qui est dans le même répertoire que ton fichier.

    A moins que tu mettes ta partie admin dans le même répertoire que ton fichier publique.

    Si ça marche en publique et pas en admin c'est que le soucis ne vient pas du code. Tu as pas Firefox et Firebug ??

  5. #5
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Je dois être fatigué car je comprend toujours pas, ou tu as mal compris donc je vais essayer de m'expliquer donc si dessous le code en entier intégré dans la page.
    Donc sur cette page il y un bouton select avec des info qui quand elle est sélectionner charge d'autre info dans un second select sachant que l'on charge les second elelement grace au fichier php donc la ca marche tres bien sauf que maintenant j'aimerais utilisé ce même code sauf que quand la page est chargé le premier select a deja une parametre de sélectionné et donc ce que j'arrive pas a faire c'est faire apparaitre le second select sachant que le premier a deja un param selectionner.

    En esperant avoir été clair merci a toi.

    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title></title>
    <meta name="description" content="" />
    <meta name="keywords" content="" />
    <meta http-equiv="Content-Language" content="fr-FR,be,ch,fr" />
    <link rel="stylesheet" href="admin_lfr.css" type="text/css" />
    <script type="text/javascript">
    $(function(){
    	$("select#select_first").change(function(){
    		$.getJSON("ajax.php",{id: $(this).val(),selec : "1"}, function(j){
    			var options = '';
    			for (var i = 0; i < j.length; i++) {
    				options += '<option value="' + j[i].valeur + '">' + j[i].nom_galerie + '</option>';
    				var id_galerie = j[i].id;
    			}
    			$("#select_second").html(options);
    		})
    	})			
    })
    </script>
    </head>
    <body>
      <form method="post" action="">
          <select name="select_first" id="select_first">
            <option value="selec">--Selectionner--</option>
            <option value="1">--valeur 1--</option>
          </select>
          <select name="select_second" id="select_second">  
          </select>          
      </form>
    </body>
    </html>

  6. #6
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Moi je ne parle pas de code mais d'architecture. Avant de penser que le soucis vient du code il faudrait voir ailleurs (surtout si tu n'as pas de messages d'erreur).

    Cette partie est identique quelque soit la page :
    J'espère juste que ton fichier existe sinon ça marchera jamais (ce qui est peut-être déjà le cas).

  7. #7
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Donc en faite mon fichier ajax.php sert a d'autre requete ajax si c'est sa le probleme mais bon dans mon fonction je récupere un param selec que le met a 1 pour savoir sur quel page je travaille.

    Merci a toi

  8. #8
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    On va faire plus simple : Comment sont organisés tes fichiers sur ton serveur ?

  9. #9
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    jai un repertoire administration et dedans le fichier ajax.php et aussi la page le code ci-dessus.

    Merci

  10. #10
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Quel est le code PHP dans ton fichier ajax.php ?

  11. #11
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    if($_GET['selec'] == 1)
    {
      //requete sql et on recupere l'info du select avec id
     
     echo json_encode('resultatrequete');
    }
    ?>
    Meci a toi

  12. #12
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Il y a pas d'inclusion de fichiers ??

    Tu as firefox ? et Firebug ?

  13. #13
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Oui j'ai firebug et j'ai aucun beug et sinon a part l'include du fichier pour la connexion a la bdd c tous.

    merci

  14. #14
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    C'est pas un bug que je recherche

    Alors effectues ceci :

    1. Ouvre firebug
    2. Sélectionne l'onglet Reseau
    3. Puis clique sur XHR
    4. Enfin sélectionne dans ton premier select la valeur pour que ton deuxième select se remplisse.

    SI tu as fait toutes ces opérations tu devrais avoir une ligne dans Firebug. Elle dit quoi ?

  15. #15
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Deja pour qu'il me renvoie un truc faut que je sélectionne manuellement un element ds mon menu ce qui est normal car ca fct bien quand je fais comme ca mais sinon comme je voudrais faire il me renvoie rien.

    merci a toi

  16. #16
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Là ça devient du PHP et non du JavaScript

  17. #17
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Ah bon ? Pour moi c'est juste que l'ajax ne recupere pas l'element selectionner au chargement de ma page non ?

    Merci a toi

  18. #18
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Faudrait savoir ce que tu veux exactement parce que moi je m'y perds


    • Tu veux faire ton deuxième select se charger au chargement de la page sans jQuery : PHP
    • Tu veux le faire avec jQuery alors là il faut que tu appelles ta fonction avec les bons paramètres. Exemple :
      Code xhtml : Sélectionner tout - Visualiser dans une fenêtre à part
      <script type="text/javascript">charge_select(1);</script>
      Mais c'est bête d'utiliser AJAX au chargement de la page quand on peut le faire par PHP

  19. #19
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $("select#select_first").change(function(){...});
    Là, tu fais ton appel Ajax sur le onchange d'un select, je vois pas comment ça pourrait être effectif au chargement de la page...
    Il faut changer l'événement, ou mieux, faire comme te l'indiques Kerod, puisque ce sont des données initiales, autant le faire coté PHP !

  20. #20
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Juste pour savoir qu'elle autre evenement on pourrait mettre pour que ca marche ?

    Merci a vous.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Customiser un Select avec Jquery
    Par Décibel dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 15/02/2012, 20h55
  2. les <select> avec jQuery ajax
    Par nigella dans le forum jQuery
    Réponses: 4
    Dernier message: 19/12/2011, 16h21
  3. Réponses: 12
    Dernier message: 21/08/2011, 00h08
  4. ecrire dans un input type select avec jquery
    Par stomerfull dans le forum jQuery
    Réponses: 1
    Dernier message: 29/09/2009, 18h23
  5. Récuperer valeur d'un select avec jquery
    Par prophedev dans le forum jQuery
    Réponses: 1
    Dernier message: 25/06/2009, 01h05

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