Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/12/2011, 14h28   #1
Candidat au titre de Membre du Club
 
Inscription : décembre 2010
Messages : 47
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 47
Points : 12
Points : 12
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 :
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 :

Citation:
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 !
Logarithmix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2011, 15h02   #2
Membre éclairé
 
Avatar de hariman
 
Homme Luc Hariman RANDRIANOMENJANAHARY
Développeur Java
Inscription : janvier 2008
Messages : 175
Détails du profil
Informations personnelles :
Nom : Homme Luc Hariman RANDRIANOMENJANAHARY
Localisation : Ile Maurice

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

Informations forums :
Inscription : janvier 2008
Messages : 175
Points : 349
Points : 349
Envoyer un message via MSN à hariman Envoyer un message via Skype™ à hariman
Bonjour,

Utiliser 2 Id identiques dans la même page ? bizarre !
Utilise plutôt "name" au lieu de "id" pour "debut"
__________________
Les boutons et adorent être cliqués, donc ne les oubliez pas
hariman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2011, 17h07   #3
Candidat au titre de Membre du Club
 
Inscription : décembre 2010
Messages : 47
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 47
Points : 12
Points : 12
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"
Logarithmix est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h01.


 
 
 
 
Partenaires

Hébergement Web