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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
var t_date = [{'jour' : 1, 'mois' : 1, 'an' : 2006},
{'jour' : 2, 'mois' : 2, 'an' : 2008}];
// création & ajout des selects...
var select_an = document.createElement('select');
document.body.appendChild(select_an);
var select_moi = document.createElement('select');
document.body.appendChild(select_moi);
tmp = document.createElement('option');
tmp.text = 'Selectionnez une année';
tmp.value = 'rien';
select_an.options[select_an.length] = tmp;
var classeur = {'an' : {}, 'mois' : {}};
// classer par années
for (o in t_date)
if (!classeur.an[t_date[o].an]) classeur.an[t_date[o].an] = [t_date[o]];
else classeur.an[t_date[o].an].push(t_date[o]);
// remplir select d'années
for (o in classeur.an){
tmp = document.createElement('option');
tmp.text = tmp.value = o; // l'année comme titre et valeur
select_an.options[select_an.length] = tmp;
}
// fonction pour changer le 2nd select
select_an.onchange = function(){
if (this.value == 'rien') return false;
classeur.moi = {}
// classer par mois les trucs de cette année
for (o in classeur.an[this.value])
if (!classeur.mois[classeur.an[this.value][o].mois]) classeur.mois[classeur.an[this.value][o].mois]= [classeur.an[this.value][o]];
else classeur.mois[classeur.an[this.value][o].mois].push(classeur.an[this.value][o]);
//nettoyer la liste
while (select_moi.length != 0)select_moi.remove(0);
// afficher....
for (o in classeur.mois){
tmp = document.createElement('option');
tmp.text = tmp.value = o; // le mois comme titre et valeur
select_moi.options[select_moi.length] = tmp;
}
} |
Partager