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 :

Sélectionner enfant d'une div avec la forme this.id


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2010
    Messages : 59
    Par défaut Sélectionner enfant d'une div avec la forme this.id
    Bonjour à tous.
    J'utilise le plugin datepicker de Jquery UI pour une petite application web.
    J'aurais besoin de sélectionner le champ "date" dans ma div "delai" dans l’instanciation de mon plugin, malheureusement je n'y arrive pas !
    En fait, j'ai deux div principales, "delai" et "activite", contenant chacun les champs "debut" et "fin", où datepicker est instancié.
    Je voudrais pouvoir appliquer le plugin selon que l'utilisateur se trouve dans "delai" ou "activite", sans avoir à toujours changer les id enfants de "debut" et "fin"

    Voici mon 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
    $(function() {
    		var dates = $("div[id='delai'] #debut, div[id='delai'] #fin").datepicker({
    			defaultDate: "+1w",
    			dateFormat: 'yy/mm/dd',
    			changeMonth: true,
    			numberOfMonths: 2,
    			onSelect: function( selectedDate ) {
    				var option = this.id == "debut" ? "minDate" : "maxDate",
    					instance = $( this ).data( "datepicker" ),
    					date = $.datepicker.parseDate(
    						instance.settings.dateFormat ||
    						$.datepicker._defaults.dateFormat,
    						selectedDate, instance.settings );
    				dates.not( this ).datepicker( "option", option, date );
    			}
    		});
    	});
    Tout se joue à la ligne suivante :

    var option = this.id == "debut" ? "minDate" : "maxDate"
    J'aurais besoin que le "debut" soit l'id de la balise début contenu dans ma div "delai".
    Comme un simple $("#delai").find("#debut");
    Mais cette forme ne marche pas quand je remplace "debut"...
    Quand je met "debut" pour ma div "delai" et "debut2" pour ma div "activite" tout marche bien...

    merci d'avance !

  2. #2
    Membre chevronné Avatar de hariman
    Homme Profil pro
    Développeur Java, Android
    Inscrit en
    Janvier 2008
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Développeur Java, Android
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 200
    Par défaut
    Bonjour,

    Utiliser 2 Id identiques dans la même page ? bizarre !
    Utilise plutôt "name" au lieu de "id" pour "debut"

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2010
    Messages : 59
    Par défaut
    Bonjour, et merci de ta réponse.
    Je sais que ce n'est pas très propre d'utiliser plusieurs fois les mêmes id, cependant je travail avec du clonage de formulaire, donc pour toutes mes fonctions de remplacements d'id, ça m'arrange fortement de ne pas changer les noms. (d'où l'utilité de pouvoir utiliser les div parentes "délai" et "activite" pour naviguer dans mes clones).
    Pour le moment j'ai fait deux pages php différentes, une pour mon délai et une pour mon activité, en attendant de résoudre cette histoire de datepicker.
    Je ne comprend pas trop comment implémenter avec le "name" dans ce cas précis. Un this.name reviendrait au même je pense, étant donné que mes deux div "debut" auront le même "name"

Discussions similaires

  1. Réponses: 3
    Dernier message: 25/06/2008, 15h21
  2. Mettre une couleur dans une cellule avec user form
    Par moilou2 dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 10/01/2008, 12h12
  3. Ouverture d'une popups avec un <form en plein centre de l'ecran
    Par mecmec dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/06/2007, 19h07
  4. Problème de hauteur d'une div avec background
    Par Yoteco dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 29/01/2007, 15h17
  5. Comment faire une classe avec deux form?
    Par Mickey.jet dans le forum Delphi
    Réponses: 10
    Dernier message: 04/07/2006, 18h23

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