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 :

Amélioration select jquery


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Femme Profil pro
    Analyse système
    Inscrit en
    Octobre 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 36
    Par défaut Amélioration select jquery
    Bonjours,

    J’ai fais ce code

    https://fiddle.jshell.net/guxofsnb/1/

    il marche bien mais par contre il y a un petit détail que je n'arrive pas à recoudre sur le select 1

    vous cliquer sur choix 1 et choix 2 et là vous verrez qu'il se met bien à droite du select a la ligne 12
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <p class="choix_membre"><span></span></p>

    Jusqu’ici tout va bien et quand vous cliquer sur le select 2 et vous coché choix 6 et choix 7
    il se met les mots dans la ligne 12 hors je ne veux pas qu'il se met dans la class car il se met sur la ligne 17
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <dt class="hida1"><span>Select</span></dt>

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <p class="choix_membre"><span></span></p>

    Ensuite si vous posez la question pour quoi j’ai mis plein

    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    .parent().parent().parent().parent().parent().parent());


    C’est pour évité que les selects s’ouvre tous en même temps
    Si vous avez une autre solution
    Merci de votre aide

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 668
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 668
    Par défaut
    déjà il n'est plus recommandé d'utiliser "delegate" (voir la documentation http://api.jquery.com/delegate/)

    ensuite je n'ai pas compris ce que je vous cherchez à afficher dans l'objet "choix_membre".
    seulement les cases cochées par le "dl" ouvert ou bien toutes les cases cochées de toute la page ?

  3. #3
    Membre actif
    Femme Profil pro
    Analyse système
    Inscrit en
    Octobre 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 36
    Par défaut
    je vais répété

    https://fiddle.jshell.net/guxofsnb/5/

    tu vois il y a select 1 et select 2

    regarde select 1

    quand tu coche choix 1 là il se met à gauche choix1 là c'est bon c'est ok

    ensuite regarde select 2

    tu coches choix 6 il se met dans la classe p class="choix_membre"><span></span></p> qui se trouve ligne 9 sur le select1 hors il ne faut pas qui se met sur le select 1 étant donné qui se met a la ligne 15 qui remplace select2

    merci d'avance

  4. #4
    Modérateur

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 208
    Par défaut
    Bonjour,
    il y visiblement un mauvais ciblage du parent mais je ne trouve pas cela très étonnant lorsque l'on voit .parent().parent().parent().parent().parent().parent()); dans ton code.
    Regarde de plus près la documentation officiel sur parent()

  5. #5
    Membre actif
    Femme Profil pro
    Analyse système
    Inscrit en
    Octobre 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 36
    Par défaut
    merci, mais tu ne peut pas me le faire je t'en remercie pour ton aide

  6. #6
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 511
    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 511
    Par défaut
    bonjour,
    ton code est un peu difficile a lire surtout avec .parent().parent().parent()...
    tout d'abord il faut ajouter un span dans .hida1
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <dt class="hida1"><span>Select 1</span></dt>
    .
    j'ai rectifié un peu le code :
    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
     
    //Toggle de la liste
    $(".multiple-choix").on("click",".hida1",  function() {
      $(".mutliSelect1 ol").not($(".mutliSelect1 ol", $(this).parent())).slideUp('500');
      $(".mutliSelect1 ol", $(this).parent()).slideToggle('500');
    });
    //Reporter valeur
    $(".multiple-choix").on("change", ".mutliSelect1 ol input[type='checkbox']", function() {
     
      //variables
      var p = $(".hida1 span, p.choix_membre ");/*ici p.choix_membre et pas  : .choix_membre p */
      var string = ' ';
      //pour chaque checkbox dont la valeur est true
      $(".mutliSelect1 ol input[type='checkbox']").each(function() {
        if ($(this).is(':checked')) {
          string = string + $(this).val() + ', ';
        }
      });
     
      //decoupage de la virgule
      newstring = string.substring(0, string.lastIndexOf(','));
      if (newstring == '') {
        newstring = 'Select';
      }
      p.html(newstring);
     
      $('.choix_membre').text(newstring);
     
    });

Discussions similaires

  1. Select jquery function
    Par surfeur2 dans le forum jQuery
    Réponses: 1
    Dernier message: 15/05/2016, 19h25
  2. Réponses: 8
    Dernier message: 23/09/2015, 10h40
  3. Amélioration bxSlider - jQuery
    Par Midou_vb dans le forum jQuery
    Réponses: 0
    Dernier message: 05/03/2013, 12h21
  4. Add/remove SELECT jquery
    Par yurispy dans le forum jQuery
    Réponses: 6
    Dernier message: 18/02/2013, 00h45
  5. peuplement select jquery
    Par nico72 dans le forum jQuery
    Réponses: 12
    Dernier message: 05/10/2011, 21h35

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