Changement de couleur des div
Bonjour,
Je développe une application de gestion des horaires. Dès lors, comme des personne travaille le WE, je dois mettre en évidence les horaires des personnes qui travaille le WE.
Pour cela j'ai développé cette fonction JS :
Code:
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 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
function verifCouleur(){
var idArray = [];
var elements = document.getElementsByName('idPersonneSelected') ;
var dateAujourdhuiVar = dojo.widget.byId("dateModif").getDate();
xx(dojo.widget.byId("dateModif").getDate());
var jourdhui=new Date();
var jour=xx(jourdhui.getDate());
var mois=xx(jourdhui.getMonth()+1);
var an=xx(jourdhui.getFullYear());
var dateAujourdhuiValue = jour+'-'+mois+'-'+an;
//alert("dateAujourdhui : "+dateAujourdhuiValue);
for (var i=0, n=elements.length; i<n; i++){
alert("nb : "+elements.length);
idArray.push(elements.value);
var idPersonne = elements[i].value;
var variableNbHeureAfaire = "nbHeureAfaire_"+idPersonne;
var nbHeureAFaire = document.forms["createForm"].elements[variableNbHeureAfaire].value;
//alert("nbHeureAFaire : "+nbHeureAFaire);
var variableNbHeureFaite = 'nbHeureFaite_'+idPersonne;
var nbHeureFaite = document.forms["createForm"].elements[variableNbHeureFaite].value;
//alert("nbHeureFaite : "+nbHeureFaite);
var div_res = 'div_nbHeureFaite_'+idPersonne;
if(nbHeureFaite == null){
document.getElementById(div_res).innerHTML== "00:00 heure";
}
if(nbHeureAFaire != nbHeureFaite){
//alert("Valzue non égale");
document.getElementById(div_res).style.color = "red";
} else{
document.getElementById(div_res).style.color = "black";
}
//Pour mettre en évidence les heure travailler le Week and
var horaireSamedi = "divHoraireModif6_"+idPersonne;
var horaireDimanche = "divHoraireModif7_"+idPersonne;
if(document.getElementById(horaireSamedi) != null){
document.getElementById(horaireSamedi).style.backgroundColor = "#EDAA44";
}
if(document.getElementById(horaireDimanche) != null){
document.getElementById(horaireDimanche).style.backgroundColor = "#EDAA44";
}
//Pour mettre en couleur si les horaires ont été modifié
for(n=1; n<8; n++) {
var divHoraire = "divHoraireModif"+n+"_"+idPersonne; // pour savoir l'horaire de travail de la personne
var varModifJour = "ModifJour"+n+"_"+idPersonne; //Pour savoir si l'horaire a été modificie
var dateJour = "jour"+n;
var divDemiAbs = "divDemiAbsenceModif"+n+"_"+idPersonne;
var divAbs = "divAbsenceModif"+n+"_"+idPersonne;
var divJour = "divJour"+n+"_"+idPersonne;
var dateJourValue = document.getElementById(dateJour).value;
//alert("dateJourValue : "+dateJourValue);
//Pour mettre en évidence la date d'aujourd'hui
if(dateAujourdhuiValue == dateJourValue){
//alert("ICICICICICCI divJour : "+divJour);
document.getElementById(divJour).style.backgroundColor = "#6BD8CA";
document.getElementById(divDemiAbs).style.color = "green";
document.getElementById(divHoraire).style.color = "green";
document.getElementById(divAbs).style.color = "green";
}
//alert("valeur : "+document.getElementById(varModifJour).value);
if(document.getElementById(varModifJour).value == 'oui'){
document.getElementById(divDemiAbs).style.color = "red";
document.getElementById(divHoraire).style.color = "red";
document.getElementById(divAbs).style.color = "red";
}
}
}
} |
Donc mon
Code:
alert("nb : "+elements.length);
me renvoit bien le bon nombre de personne.
J'ai bien un changement de couleur grâce à ce code ...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
//Pour mettre en évidence les heure travailler le Week and
var horaireSamedi = "divHoraireModif6_"+idPersonne;
var horaireDimanche = "divHoraireModif7_"+idPersonne;
if(document.getElementById(horaireSamedi) != null){
document.getElementById(horaireSamedi).style.backgroundColor = "#EDAA44";
}
if(document.getElementById(horaireDimanche) != null){
document.getElementById(horaireDimanche).style.backgroundColor = "#EDAA44";
} |
Toutefois, seule les 8 premières personne de cette liste ont un changement de couleurs ..... Or je ne vois pas où est le pb .../
Pourriez vous m'aider ?