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

JavaScript Discussion :

Modification des données saisies en base de données


Sujet :

JavaScript

  1. #1
    Membre habitué
    Femme Profil pro
    Inscrit en
    Mai 2012
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 360
    Points : 139
    Points
    139
    Par défaut Modification des données saisies en base de données
    Bonjour,

    Je développe une application de gestion des horaires du personnel.
    Pour insérer/créer une semaine, je réussis à calculer les heures effectuées dans la semaine par les personnes grâce à ma fonction docount()
    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
    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
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
     
    function doCount(idPersonne){
    	//alert("do count");
    	var res = 0;
    	for (i=1; i<8; i++){
    		var debutAM = 'horaire'+i+'dm_'+idPersonne;
    		var finAM = 'horaire'+i+'fm_'+idPersonne;
    		var debutPM = 'horaire'+i+'da_'+idPersonne;
    		var finPM = 'horaire'+i+'fa_'+idPersonne;
     
    		//Gestion des demi-absence matin ou après midi
    		var horaireApresdebDemiAbs = "horaire"+i+"debApresDemiAbs_"+idPersonne;
    		var horairApresfinDemiAbs = "horaire"+i+"finApresDemiAbs_"+idPersonne
    		var horaireMatindebDemiAbs = "horaire"+i+"debMatinDemiAbs_"+idPersonne;
    		var horairMatinfinDemiAbs = "horaire"+i+"finMatinDemiAbs_"+idPersonne
     
    		var debutDemiAbs = '';
    		var finDemiAbs = '';
     
    		if(document.getElementById(horaireApresdebDemiAbs)!=null){ 
    			debutDemiAbs = horaireApresdebDemiAbs;
    			//alert("horaireApresdebDemiAbs");
    		}
    		if(document.getElementById(horairApresfinDemiAbs)!=null){ 
    			finDemiAbs = horairApresfinDemiAbs;
    			//alert("horairApresfinDemiAbs");
    		}
     
    		if(document.getElementById(horaireMatindebDemiAbs)!=null){ 
    			debutDemiAbs = horaireMatindebDemiAbs;
    			//alert("horaireMatindebDemiAbs");
    		}
     
    		if(document.getElementById(horairMatinfinDemiAbs)!=null){
    			finDemiAbs = horairMatinfinDemiAbs;
    			//alert("horairMatinfinDemiAbs");
    		}
     
    		//alert("debutDemiAbs : "+debutDemiAbs);						
    		var debutAM_value = document.getElementById(debutAM).value;
    		//alert("debutDemiAbs : "+debutDemiAbs);
    		//alert("finDemiAbs : "+finDemiAbs);
     
    		var finAM_value = document.getElementById(finAM).value;
    		var debutPM_value = document.getElementById(debutPM).value;
    		var finPM_value = document.getElementById(finPM).value;
     
    		var debutDemiAbs_value = "00:00";
    		//alert("document.getElementById(debutDemiAbs) : "+document.getElementById(debutDemiAbs));
     
    		// Modification ici
    		if(document.getElementById(debutDemiAbs)!=null){ 
    			//alert("Ma variable debutDemiAbs est defini");
    			if(document.getElementById(debutDemiAbs).value!=null){
    			debutDemiAbs_value = document.getElementById(debutDemiAbs).value;
    			//alert("DEMI début : "+debutDemiAbs_value);
    			}
    		}
     
    		//alert("Existnate : "+document.getElementById(debutDemiAbs_value));
     
    		var finDemiAbs_value = "00:00";
    		//alert("document.getElementById(finDemiAbs).value ====> "+document.getElementById(finDemiAbs).value);
     
    		if(document.getElementById(finDemiAbs)!=null){ 
    			//alert("Ma variable finDemiAbs est defini");
    			if(document.getElementById(finDemiAbs).value){
    			finDemiAbs_value = document.getElementById(finDemiAbs).value;
    			//alert("DEMI Fin : "+finDemiAbs_value);
    			}
    		}
     
    		if(debutAM_value == ''){
    			debutAM_value = '00:00';
    		}
     
    		var debutAM_temps = debutAM_value.split(':');
    		var debutAM_heure = debutAM_temps[0];
    		var debutAM_min = debutAM_temps[1];
     
    		var debutAM_min_res = (parseInt(debutAM_heure*60))+parseInt(debutAM_min);
     
    		if(finAM_value == ''){
    			finAM_value = '00:00';
    		}
     
    		var finAM_temps = finAM_value.split(':');
    		var finAM_heure = finAM_temps[0];
    		var finAM_min = finAM_temps[1];
     
    		var finAM_min_res = (parseInt(finAM_heure*60))+parseInt(finAM_min);
    		//alert('finAM_min_res : '+finAM_min_res);
     
    		//calcul du temps effectué le matin en min
    		var totalAM_min = finAM_min_res - debutAM_min_res;
     
    		if(debutPM_value == ''){
    			debutPM_value = '00:00';
    		}
     
    		var debutPM_temps = debutPM_value.split(':');
    		var debutPM_heure = debutPM_temps[0];
    		var debutPM_min = debutPM_temps[1];
     
    		var debutPM_min_res = (parseInt(debutPM_heure*60))+parseInt(debutPM_min);
     
    		if(finPM_value == ''){
    			finPM_value = '00:00';
    		}
     
    		var finPM_temps = finPM_value.split(':');
    		var finPM_heure = finPM_temps[0];
    		var finPM_min = finPM_temps[1];
     
    		var finPM_min_res = (parseInt(finPM_heure*60))+parseInt(finPM_min);
     
    		//calcul du temps effectué l'apres midi en min
    		var totalPM_min = finPM_min_res - debutPM_min_res;
     
    		if(debutDemiAbs_value == ''){
    			debutDemiAbs_value = '00:00';
    		}
     
    		var debutDemiAbs_temps = debutDemiAbs_value.split(':');
    		var debutDemiAbs_heure = debutDemiAbs_temps[0];
    		var debutDemiAbs_min = debutDemiAbs_temps[1];
     
    		var debutDemiAbs_min_res = (parseInt(debutDemiAbs_heure*60))+parseInt(debutDemiAbs_min);
     
    		if(finDemiAbs_value == ''){
    			finDemiAbs_value = '00:00';
    		}
     
    		var finDemiAbs_temps = finDemiAbs_value.split(':');
    		var finDemiAbs_heure = finDemiAbs_temps[0];
    		var finDemiAbs_min = finDemiAbs_temps[1];
     
    		var finDemiAbs_min_res = (parseInt(finDemiAbs_heure*60))+parseInt(finDemiAbs_min);
     
    		//calcul du temps effectué durant la demi absence en min
    		var totalDemiAbs_min = finDemiAbs_min_res - debutDemiAbs_min_res;
     
    		//calcul total de l'heure effectué
    		var total_Global_min = parseInt(totalAM_min) + parseInt(totalPM_min) + parseInt(totalDemiAbs_min);
    		/*alert('totalAM_min : '+totalAM_min);
    		alert('totalPM_min : '+totalPM_min);
    		alert('totalDemiAbs_min : '+totalDemiAbs_min);
    		alert('total_Global_min : '+total_Global_min);*/
     
    		res += total_Global_min;
    		/*var total_Global_heure = Math.floor(total_Global_min/60)+":"+(total_Global_min%60);
    		alert('totalAM_min : '+total_Global_heure);*/
    	}
    	var heure_res = Math.floor(res/60);
    	if (heure_res == 0 || heure_res < 10) heure_res = "0"+heure_res;
    	var min_res = (res%60);
    	if (min_res == 0 || min_res < 10) min_res = "0"+min_res;
     
    	var total_Global_heure_sem = heure_res+":"+min_res;
    	//alert('total_Global_heure_sem : '+total_Global_heure_sem);
     
    	var champCache = 'nbHeureFaite_'+idPersonne;
    	document.getElementById(champCache).value = total_Global_heure_sem;
     
    	var div_res = 'div_nbHeureFaite_'+idPersonne;
    	document.getElementById(div_res).innerHTML=total_Global_heure_sem;
     
    }
    Extrait du code pour le lundi dans le fichier Planning.jsp:
    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
    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
     
     
    <td> 
    	<b><s:property value="personneDto.nom"/> 
    	<s:property value="personneDto.prenom"/> <br> </b>
    	 Heure contractuelle : <br>
    	<input type="hidden" name="nbHeureAfaire_<s:property value='%{personneDto.idPersonne}'/>" id="nbHeureAfaire_<s:property value='%{personneDto.idPersonne}'/>" value="<s:property value='personneDto.horaireContrat'/>">
    	<div id="nbHeureAfaire_<s:property value='%{personneDto.idPersonne}'/> "> <s:property value="personneDto.horaireContrat"/> Heure</div>
     
    	Heures Realisées : <br>
    	<input type="hidden" name="nbHeureFaite_<s:property value='%{personneDto.idPersonne}'/>" id="nbHeureFaite_<s:property value='%{personneDto.idPersonne}'/>" value=''>
    	<div id="div_nbHeureFaite_<s:property value='%{personneDto.idPersonne}'/>"> 0 heure</div>
    </td>
     
     
    <!-- Lundi -->		
    	 <td>
    		<input type="radio" id="demiab1_<s:property value="%{personneDto.idPersonne}"/>" name="work1_<s:property value="%{personneDto.idPersonne}"/>"  value="0" onchange="afficheDiv('1_<s:property value="%{personneDto.idPersonne}"/>', 'demiab1_<s:property value="%{personneDto.idPersonne}"/>', 'pres1_<s:property value="%{personneDto.idPersonne}"/>')" />  1/2 Abs 
    		<input type="radio" id="ab1_<s:property value="%{personneDto.idPersonne}"/>" name="work1_<s:property value="%{personneDto.idPersonne}"/>"  value="0" onchange="afficheDiv('1_<s:property value="%{personneDto.idPersonne}"/>', 'ab1_<s:property value="%{personneDto.idPersonne}"/>', 'pres1_<s:property value="%{personneDto.idPersonne}"/>')" />Abs 
    		<input type="radio" id="pres1_<s:property value="%{personneDto.idPersonne}"/>" name="work1_<s:property value="%{personneDto.idPersonne}"/>" value="1" onchange="afficheDiv('1_<s:property value="%{personneDto.idPersonne}"/>', 'ab1_<s:property value="%{personneDto.idPersonne}"/>', 'pres1_<s:property value="%{personneDto.idPersonne}"/>')" checked/> Pres<br>
    			<div id="horaire1_<s:property value="%{personneDto.idPersonne}"/>" style="display: block;">
    			<table border="1">
    				<tr>
    					<td>
    						De <s:textfield name="horaire1dm_%{personneDto.idPersonne}" id="horaire1dm_%{personneDto.idPersonne}" size="5" maxLength="5" value="00:00" 
    							onBlur="javascript:doCount(${personneDto.idPersonne})"/>
     
    						A  <s:textfield name="horaire1fm_%{personneDto.idPersonne}" id="horaire1fm_%{personneDto.idPersonne}" size="5" maxLength="5" value="00:00" 
    							onBlur="javascript:doCount(${personneDto.idPersonne})"/>
     
     
    					</td>
    				</tr>
    				<tr>
    					<td>
    						De <s:textfield name="horaire1da_%{personneDto.idPersonne}" id="horaire1da_%{personneDto.idPersonne}" size="5" maxLength="5" value="00:00" 
    							onBlur="javascript:doCount(${personneDto.idPersonne})"/>
    						A <s:textfield name="horaire1fa_%{personneDto.idPersonne}" id="horaire1fa_%{personneDto.idPersonne}" size="5" maxLength="5" value="00:00" 
    							onBlur="javascript:doCount(${personneDto.idPersonne})"/>
    					</td>
    				</tr>
    			</table>
    			</div>
    			<div id="abs1_<s:property value="%{personneDto.idPersonne}"/>" style="display: none;">
    			<table border="1">
    				<tr>
    					<td>
     
    						<s:select headerKey="-1" headerValue="Abs ?" id="absenceSelected1_%{personneDto.idPersonne}" name="absenceSelected1_%{personneDto.idPersonne}" list="listAbsenceDto" listKey="idAbsence" listValue="abrAbsence"></s:select>
    					</td>
    				</tr>
    			</table>
    			</div>
    			<div id="demiabs1_<s:property value="%{personneDto.idPersonne}"/>" style="display: none;">
    			<table border="1">
    				<tr>
    					<td>
    						<div id="horaire1DemiAbsMatin_<s:property value="%{personneDto.idPersonne}"/>"></div>
    					</td>
    				</tr>
    				<tr>
    					<td>
    						<s:select headerKey="-1" headerValue="Abs ?" id="demiabsenceSelected1_%{personneDto.idPersonne}" name="demiabsenceSelected1_%{personneDto.idPersonne}" list="listAbsenceDto" listKey="idAbsence" listValue="abrAbsence"></s:select>
    					</td>
    				</tr>
    				<tr>
    					<td>
    						<div id="horaire1DemiAbsApres_<s:property value="%{personneDto.idPersonne}"/>"></div>
    					</td>
    				</tr>
    			</table>
    			</div>
    	</td>
    Avec ces 2 codes, je peux enregistrer en base de données le nombre d'heure effectuées.

    Dans planning.jsp, le heure modifiées sont calculées comme je le souhaite (grâce à la "div_nbHeureFaite") et je l'insère en base de données

    Malheureusement, il se trouve que les horaires des personnes peuvent être amener à être modifiées.

    Pour me simplifier le shlimblick, j'ai crée un fichier modifPlanning.jsp ;

    La fonction doCount est la même qu'utilisée ci-dessus.

    Et Voici le code utilisé dans modifPlanning.jsp

    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
    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
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
     
    <td>  <b><s:property value="personneDto.nom"/> 
    		<s:property value="personneDto.prenom"/> <br> </b>
    		 Heure contrat : <br>
    		<input type="hidden" name="nbHeureAfaire_<s:property value='%{personneDto.idPersonne}'/>" id="nbHeureAfaire_<s:property value='%{personneDto.idPersonne}'/>" value="<s:property value='personneDto.horaireContrat'/>">
    		<div id="nbHeureAfaire_<s:property value='%{personneDto.idPersonne}'/> "> <s:property value="personneDto.horaireContrat"/> Heure</div>
    		Heure Realisé : <br>
    		<input type="hidden" name="nbHeureFaite_<s:property value='%{personneDto.idPersonne}'/>" id="nbHeureFaite_<s:property value='%{personneDto.idPersonne}'/>" value="">
    		<div id="div_nbHeureFaite_<s:property value='%{personneDto.idPersonne}'/>"> <s:property value='compteurDto.horaireFaite'/> heure</div>
    	</td>
     
    	 <!-- Lundi -->		
    	  <td style="text-align: center;">
    	 <div id="horaire1_<s:property value="%{personneDto.idPersonne}"/>" style="display: block; text-align: center;">
    		<table border="1">
    			<tr>
    			<td style="display: block; text-align: left;">
    				<!-- Gestion des horaires travailles -->
    				 <s:set var="val1dm" value="%{defaultValue}"/> 
    				 <s:set var="val1fm" value="%{defaultValue}"/>
    						<s:if test="personneDto.idPersonne == jourDispAM.idPersonne">
    							<!-- avant : ${val1dm} -->
    							<s:if test="jourDispAM.horaire1dm != defaultValue">
    								<s:set var="val1dm" value="%{jourDispAM.horaire1dm}"/> 
    							</s:if>
    							<!-- avant : ${val1fm} -->
    							<s:if test="jourDispAM.horaire1fm != defaultValue">
    								<s:set var="val1fm" value="%{jourDispAM.horaire1fm}"/>
    							</s:if>
    						</s:if>
     
    				 <!-- jourDispAM.horaire1dm : ${jourDispAM.horaire1dm}<br>
    				 jourDispPM.horaire1da : ${jourDispAM.horaire1da} <br>
    				 defaultValue : ${defaultValue}-->
    				<div id="divHoraireModif1_<s:property value="%{personneDto.idPersonne}"/>"> 
    				<s:if test="jourDisp.idAbsenceSelected1 != defaultValueAb">
    					<s:hidden id="horaire1dm_%{personneDto.idPersonne}" name="horaire1dm_%{personneDto.idPersonne}" value="" /> 
    					<s:hidden id="horaire1fm_%{personneDto.idPersonne}" name="horaire1fm_%{personneDto.idPersonne}" value="" />
    					<s:hidden id="horaire1da_%{personneDto.idPersonne}" name="horaire1da_%{personneDto.idPersonne}" value="" /> 
    					<s:hidden id="horaire1fa_%{personneDto.idPersonne}" name="horaire1fa_%{personneDto.idPersonne}" value="" />
    				</s:if>
    				<s:if test="jourDisp.idDemiAbsenceSelected1 != defaultValueAb">
    					<s:hidden id="horaire1dm_%{personneDto.idPersonne}" name="horaire1dm_%{personneDto.idPersonne}" value="" /> 
    					<s:hidden id="horaire1fm_%{personneDto.idPersonne}" name="horaire1fm_%{personneDto.idPersonne}" value="" />
    					<s:hidden id="horaire1da_%{personneDto.idPersonne}" name="horaire1da_%{personneDto.idPersonne}" value="" /> 
    					<s:hidden id="horaire1fa_%{personneDto.idPersonne}" name="horaire1fa_%{personneDto.idPersonne}" value="" />
    				</s:if>
    				<s:if test="jourDisp.idAbsenceSelected1 == defaultValueAb">
    				<s:if test="jourDisp.idDemiAbsenceSelected1 == defaultValueAb">
    				<s:if test="jourDispAM.horaire1dm != defaultValue"> 
     
    					 De <s:hidden id="horaire1dm_%{personneDto.idPersonne}" name="horaire1dm_%{personneDto.idPersonne}" value="%{val1dm}" />  ${val1dm} 
    					 à <s:hidden id="horaire1fm_%{personneDto.idPersonne}" name="horaire1fm_%{personneDto.idPersonne}" value="%{val1fm}" />  ${val1fm}<br>
    				</s:if>
    				<s:if test="jourDispAM.horaire1dm == defaultValue"> 
    					<s:hidden id="horaire1dm_%{personneDto.idPersonne}" name="horaire1dm_%{personneDto.idPersonne}" value="" /> 
    					<s:hidden id="horaire1fm_%{personneDto.idPersonne}" name="horaire1fm_%{personneDto.idPersonne}" value="" /> 
    				</s:if>	
     
    					<s:set var="val1da" value="%{defaultValue}"/>
    					<s:set var="val1fa" value="%{defaultValue}"/>
    					<s:if test="personneDto.idPersonne == jourDispPM.idPersonne">
    						<!-- avant : ${val1dm} -->
    						<s:if test="jourDispPM.horaire1da != defaultValue">
    							<s:set var="val1da" value="%{jourDispPM.horaire1da}"/>
    						</s:if>
    						<!-- avant : ${val1fm} -->
    						<s:if test="jourDispPM.horaire1fa != defaultValue">
    							<s:set var="val1fa" value="%{jourDispPM.horaire1fa}"/>
    						</s:if>
    					</s:if>
     
     
    				<s:if test="jourDispPM.horaire1da != defaultValue">
    					 De <s:hidden id="horaire1da_%{personneDto.idPersonne}" name="horaire1da_%{personneDto.idPersonne}" value="%{val1da}" />  ${val1da}
    					 à <s:hidden id="horaire1fa_%{personneDto.idPersonne}" name="horaire1fa_%{personneDto.idPersonne}" value="%{val1fa}" />  ${val1fa}
    				</s:if>	
    				<s:if test="jourDispPM.horaire1da == defaultValue">
    					<s:hidden id="horaire1da_%{personneDto.idPersonne}" name="horaire1da_%{personneDto.idPersonne}" value="" /> 
    					<s:hidden id="horaire1fa_%{personneDto.idPersonne}" name="horaire1fa_%{personneDto.idPersonne}" value="" /> 
    				</s:if>	
    				</s:if>	
    				</s:if>	
     
    				</div>
     
    				<!-- Gestion des horaires demi absences -->
    				<s:set var="val1demidm" value="%{defaultValue}"/>
    				<s:set var="val1demifm" value="%{defaultValue}"/>
    					<s:if test="personneDto.idPersonne == jourDispDM.idPersonne">
    						<!-- avant : ${val1dm} -->
    						<s:if test="jourDispDM.typeDemiAbsence1 == 'DMA' "> 
    							<s:set var="val1demidm" value="%{jourDispDM.horaire1debApresDemiAb}"/>
     
    						</s:if>
    						<s:if test="jourDispDM.typeDemiAbsence1 == 'DMM' "> 
    							<s:set var="val1demidm" value="%{jourDispDM.horaire1debMatinDemiAbs}"/>
     
    						</s:if>
    						<!-- avant : ${val1fm} -->
    						<s:if test="val1demifm != defaultValue">
    							<s:if test="jourDispDM.typeDemiAbsence1 == 'DMA' "> 
    								<s:set var="val1demifm" value="%{jourDispDM.horaire1finApresDemiAbs}"/>
    							</s:if>
    							<s:if test="jourDispDM.typeDemiAbsence1 == 'DMM' "> 
    								<s:set var="val1demifm" value="%{jourDispDM.horaire1finMatinDemiAbs}"/>
    							</s:if>
    						</s:if>
    					</s:if>
     
    				<div id="divDemiAbsenceModif1_<s:property value="%{personneDto.idPersonne}"/>"> 
    					<s:if test="jourDispDM.typeDemiAbsence1 == 'DMA' "> 
    						est là
    						 de <s:hidden name="horaire1debApresDemiAb_%{personneDto.idPersonne}" id="horaire1debApresDemiAb_%{personneDto.idPersonne}" value="%{val1demidm}"/>  ${val1demidm}
    						 à  <s:hidden name="horaire1finApresDemiAbs_%{personneDto.idPersonne}" id="horaire1finApresDemiAbs_%{personneDto.idPersonne}" value="%{val1demifm}"/> ${val1demifm} </br>
    						<s:hidden id="demiabsenceSelected1_%{personneDto.idPersonne}" name="demiabsenceSelected1_%{personneDto.idPersonne}" value="%{jourDisp.idDemiAbsenceSelected1}"/> est en  : ${jourDisp.demiabsenceSelected1} <br>
    					</s:if>
     
    					<s:if test="jourDispDM.typeDemiAbsence1 == 'DMM' "> 
    						<s:hidden id="demiabsenceSelected1_%{personneDto.idPersonne}" name="demiabsenceSelected1_%{personneDto.idPersonne}" value="%{jourDisp.idDemiAbsenceSelected1}"/> est en  : ${jourDisp.demiabsenceSelected1} <br>
    						est là
    						de <s:hidden name="horaire1debMatinDemiAbs_%{personneDto.idPersonne}" id="horaire1debMatinDemiAbs_%{personneDto.idPersonne}" value="%{val1demidm}"/>  ${val1demidm}
    						 à  <s:hidden name="horaire1finMatinDemiAbs_%{personneDto.idPersonne}" id="horaire1finMatinDemiAbs_%{personneDto.idPersonne}" value="%{val1demifm}"/> ${val1demifm} </br>
    					</s:if>
     
    					<s:if test="jourDisp.idDemiAbsenceSelected1 == defaultValueDemiAb">
    					Modif1
    					</s:if>
    						<s:hidden id="demiabsenceSelected1_%{personneDto.idPersonne}" name="demiabsenceSelected1_%{personneDto.idPersonne}" value=""/> 
    						<s:hidden name="horaire1debDemiAbs_%{personneDto.idPersonne}" id="horaire1debDemiAbs_%{personneDto.idPersonne}" value=""/> 
    						<s:hidden name="horaire1finDemiAbs_%{personneDto.idPersonne}" id="horaire1finDemiAbs_%{personneDto.idPersonne}" value=""/>
     
    				</div>
     
    				 <div id="divAbsenceModif1_<s:property value="%{personneDto.idPersonne}"/>"> 
    					 <s:if test="jourDisp.idAbsenceSelected1 != defaultValueAb">
    						<s:hidden id="absenceSelected1_%{personneDto.idPersonne}" name="absenceSelected1_%{personneDto.idPersonne}" value="%{jourDisp.idAbsenceSelected1}"/> Absence ${jourDisp.absenceSelected1} 
    					</s:if>	
    					<s:if test="jourDisp.idAbsenceSelected1 == defaultValueAb">
    						<s:hidden id="absenceSelected1_%{personneDto.idPersonne}" name="absenceSelected1_%{personneDto.idPersonne}" value="" />  
    					</s:if>	
    				</div>
    			</td>
    			</tr>
    		</table>
    		<a href="#" style="color: #1891C0;font-weight: bold" 
    		onclick="openPreview('<s:property value="%{personneDto.idPersonne}"/>','<s:property value="personneDto.nom"/>','<s:property value="personneDto.prenom"/>','<s:property value="%{jourDisp.dateComplet1}"/>','${val1dm}','${val1fm}','${val1da}','${val1fa}','${jourDisp.demiabsenceSelected1}','${val1demidm}','${val1demifm}','${jourDisp.absenceSelected1}','<s:property value="%{jourDisp.indexJour1}"/>')">
    		<img alt="Modifier les valeurs de ce jour" src="./resources/img/modif.gif"> </a>
    	</div>
     
    	</td>
    Et là, je ne sais pas comment faire pour que les modifications apportées dans les horaires, soient calculées...:/

    Je suis coincée là-dessus depuis un certain déjà et je suis intéressée par toutes vos suggestions.

    Je vous remercie d'avance d'avoir lu jusqu'au bout mon post

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Tu veux dire une modification par le user des données dans les inputs doit entrainer un recalcul coté client ?

  3. #3
    Membre habitué
    Femme Profil pro
    Inscrit en
    Mai 2012
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 360
    Points : 139
    Points
    139
    Par défaut
    Dans l'idéal oui....

    C'est à dire que si une personne fait 35 heures (donné enregistré en base de donnée), et que l'utilisateur lui rajoute une heure, ben que le nombre d'heure que fait cette personnes passe à 36h.
    Une fois le formulaire validé, cette donnée sera enregistré/modifié en base de données.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    il faut regarder du coté des evenements onchange ou onblur des inputs pour lancer les fonctions de recalcul et modifier les contenu des champs

  5. #5
    Membre habitué
    Femme Profil pro
    Inscrit en
    Mai 2012
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 360
    Points : 139
    Points
    139
    Par défaut
    Je vous remercie de votre réponse

    Je suis désolée de vous déranger avec çà, mais j'ai tellement le nez dedans que je n'y vois plus rien (je fais appel à différentes fonctions js)

    Pour modifier les données déjà saisi, j'utilise la fonction openPreview(), dans lequel je fais passer plein de paramètre
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    function openPreview(idPersonne, nom, prenom, day, hdm, hfm,hda, hfa, demiAbs, demihdm, demifdm, abs, index)
    {
    	document.forms["popinPreview"].elements["idPersonnePreview"].value=idPersonne;
    	document.forms["popinPreview"].elements["indexPreview"].value=index;
     
    	document.getElementById('divCreate').style.display='block';
    	// La popin est en mode création
    	document.getElementById('titre').innerHTML="Modification horaire";
     
    	document.getElementById('people').innerHTML="Pour  "+prenom+" "+nom;
     
    	if(day != ''){
    		document.getElementById('day').innerHTML="Pour le  "+day;
    	}
     
    	document.getElementById('hours').style.display='none';
    	document.getElementById('halfAbsence').style.display='none';
    	document.getElementById('absencess').style.display='none';
     
     
    	if((hdm !='') && (hfm !='')){
     
    		document.getElementById('hours').innerHTML="travaille de "+hdm+" à "+hfm+" et de "+hda+" à "+hfa;
    		document.getElementById('hours').style.display='block';
    		document.getElementById('halfAbsence').style.display='none';
    	}
     
    	if(demiAbs !=''){
     
    		document.getElementById('hours').style.display='none';
    		document.getElementById('absencess').style.display='none';
    		document.getElementById('halfAbsence').innerHTML= "Sera absent pour "+demiAbs+" et sera présent de "+demihdm+" à "+demifdm;
    		document.getElementById('halfAbsence').style.display='block';
    	}
     
    	if(abs !=''){
    		document.getElementById('hours').style.display='none';
    		document.getElementById('halfAbsence').style.display='none';
    		document.getElementById('absencess').innerHTML= "Sera absent car en  "+abs;
    		document.getElementById('absencess').style.display='block';
    	}
     
    }
    Cette fonction permet d'afficher une nouvelle div et de faire apparaitre les info qui ont été modifié ou non.

    code de la div appelée
    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
    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
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
     
     
    <div class="display" id="divCreate">
     
    <div class="displayOpct">
     
    <table id="tabCreate" align="center" width="600px" cellspacing="0" cellpadding="0" border="0" class="cadb">
    	<tbody>
    		<tr>
    			<td>
    				<table width="100%">
    					<tr>
    						<td width="20" height="20"><img vspace="5" hspace="5" src="./resources/img/cbb.gif">
    						</td>
    						<td  style="font-size:12px;color: #4891C0;font-weight: bold" id="titre"> 
    							Modification horaire
    						</td>
    						<td style="font-size:10px;color: #4891C0;font-weight: bold" align="right">
    								<A href="#" onclick="closePreview();">Fermer</A>&nbsp;
    						</td>
    					</tr>
    				</table>
    			</td>
    		</tr>
     
    		<!-- Message d'information -->
     
    		<tr>
    			<td>
    				<table>
    					<tr>
    						<td>&nbsp;</td>
    						<td>
    							<table id="infoMsg">
    								<tbody>
    									<tr>
    										<td></td>
    									</tr>
    								</tbody>
    							</table>
    						</td>
    						<td>&nbsp;</td>
    					</tr>
    				</table>
    			</td>
    		</tr>
     
    		<tr>
    			<td align="center">
    			<s:form name="popinPreview">
    				<s:hidden name="idPersonnePreview" name="idPersonnePreview" value="" />
    				<s:hidden name="indexPreview" name="indexPreview" value="" />
    				<table cellpadding=5 style="width:600;align:center;" class="cadre">
    					<tr>
    						<td> Horaire enregistré en base de données</td>
    					</tr>	
    					<tr>
    						<td>
    							<div id="day"></div>
    							<div id="people"></div>
    						</td>
    					</tr>
    					<tr>
    						<td>
    							<div id="hours"></div>
    							<div id="absencess"></div>
    							<div id="halfAbsence"> </div>
    						</td>
     
     
    					</tr>					
    					<tr>
    						<td><hr></td>
    					</tr>
    					<tr>
    						 <td  style="text-align: center;">
    						  	<input type="radio" id="demiab0" name="work" value="0" onchange="afficheDiv('0_<s:property value="%{personneDto.idPersonne}"/>', 'demiab0_<s:property value="%{personneDto.idPersonne}"/>', 'pres0_<s:property value="%{personneDto.idPersonne}"/>')">  1/2 Abs 
    							<input type="radio" id="ab0" name="work" value="0" onchange="afficheDiv('0_<s:property value="%{personneDto.idPersonne}"/>', 'ab0_<s:property value="%{personneDto.idPersonne}"/>', 'pres0_<s:property value="%{personneDto.idPersonne}"/>')">Abs 
    							<input type="radio" id="pres0" name="work" value="1" onchange="afficheDiv('0_<s:property value="%{personneDto.idPersonne}"/>', 'ab0_<s:property value="%{personneDto.idPersonne}"/>', 'pres0_<s:property value="%{personneDto.idPersonne}"/>')" checked="checked"> Pres<br>
    								<div id="horaire0" style="display: block;">
    						    	<table border="1" align="center">
    						    		<tr>
    						    			<td>						    				
    						    				De <s:textfield name="horairedm" id="horairedm" size="5" maxLength="5" value="" /> A<s:textfield name="horairefm" id="horairefm" size="5" maxLength="5" value=""/>
    						    			</td>
    						    		</tr>
    						    		<tr>
    						    			<td>
    						    				De <s:textfield name="horaireda" id="horaireda" size="5" maxLength="5" value=""/> A<s:textfield name="horairefa" id="horairefa" size="5" maxLength="5" value="" />
    						    			</td>
    						    		</tr>
    						    	</table>
    						    	</div>
    						    	<div id="abs0" style="display: none;">
    						    	<table border="1" align="center">
    						    		<tr>
    						    		<!--  td>
    										<s:select headerKey="-1" headerValue="Abs ?" id="absenceSelected1_%{personneDto.idPersonne}" name="absenceSelected1_%{personneDto.idPersonne}" list="listAbsenceDto" listKey="idAbsence" listValue="abrAbsence"></s:select>
    					    			</td -->
     
    							    		<td>
    							    		   <s:select headerKey="-1" headerValue="Abs ?" id="absenceSelected" name="absenceSelected" list="listAbsenceDto" listKey="idAbsence" listValue="abrAbsence"></s:select>
    						    			</td>
    						    		</tr>
    						    	</table>
    						    	</div>
    						    	<div id="demiabs0" style="display: none;">
    						    	<table border="1" align="center">
    						    		<tr>
    							    		<!--  td>
    							    			<s:select headerKey="-1" headerValue="Abs ?" id="demiabsenceSelected1_%{personneDto.idPersonne}" name="demiabsenceSelected1_%{personneDto.idPersonne}" list="listAbsenceDto" listKey="idAbsence" listValue="abrAbsence"></s:select>
    						    			</td -->
    						    			<tr>
    						    				<td>
    							    				<div id="horaire0DemiAbsMatin"></div>
    						    				</td>
    						    			</tr>
    							    		<td>
    							    			<s:select headerKey="-1" headerValue="Abs ?" id="demiAbsenceSelected" name="demiAbsenceSelected" list="listAbsenceDto" listKey="idAbsence" listValue="abrAbsence"></s:select>
    						    			</td>
    						    		</tr>
    						    		<tr>
    							    		<td>
    							    			<div id="horaire0DemiAbsApres"></div>
    						    			</td>
    						    		</tr>
    						    	</table>
    						    	</div>
    						    </td>
     
    					</tr>
     
     
    					<tr>
    						<td align="center">	
    							<input type="button" value="Valider" onclick="returnPreview();">					
    						<br/><br/>
    						</td>
    					</tr>				
    				</table>
    				</s:form>
    				<br/><br/>
     
     
    			</td>
    		</tr>
     
    	</tbody>
    </table>
    </div>
     
    </div>

    A partir de là, je fais appel à la fonction returnPreview()

    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
    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
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
     
    function returnPreview(){
     
    	var matin_Apres = document.getElementById('matinOuApres').checked;
    	var matin_Apres2 = document.getElementById('matinOuApres').value;
    	//alert("matin_Apres "+matin_Apres);
    	//alert("matin_Apres2 "+matin_Apres2);
     
    	var valeurMatinOuApres="";
        for(i=0; i<popinDemiAbsPreview.matinOuApres.length; i++) {
        	   if (popinDemiAbsPreview.matinOuApres[i].checked) {
        	      var valeurMatinOuApres = popinDemiAbsPreview.matinOuApres[i].value;
        	   }
        }
     
    	var idPersonne = document.forms["popinPreview"].elements["idPersonnePreview"].value;
     
    	var index = document.forms["popinPreview"].elements["indexPreview"].value;
     
    	//reconstruction  des champs caché
    	//Horaire
    	var nameHoraireDm = "horaire"+index+"dm_"+idPersonne;
    	var nameHoraireFm = "horaire"+index+"fm_"+idPersonne;
    	var nameHoraireDa = "horaire"+index+"da_"+idPersonne;
    	var nameHoraireFa = "horaire"+index+"fa_"+idPersonne;
     
     
    	//Absence
    	var nameTypeAbsence ='absenceSelected'+index+'_'+idPersonne;
     
    	//Demi absence
    	var nameTypeDemiAbsence = "demiabsenceSelected"+index+"_"+idPersonne;
    	var nameDemiHoraireDebut = "horaire"+index+"debDemiAbs_"+idPersonne;
    	var nameDemiHoraireFin = "horaire"+index+"finDemiAbs_"+idPersonne;
     
    	//reconsctruction des div
    	var nameDivHoraireModif = "divHoraireModif"+index+'_'+idPersonne;
    	var nameDivDemiAbsenceModif= "divAbsenceModif"+index+'_'+idPersonne;
    	var nameDivAbsence = "divDemiAbsenceModif"+index+'_'+idPersonne;
     
    	//on cache les div 
    	document.getElementById(nameDivHoraireModif).style.display='none';	
    	document.getElementById(nameDivDemiAbsenceModif).style.display='none';	
    	document.getElementById(nameDivAbsence).style.display='none';
     
    	//nom des boutons radio présent dans le formulaire de modification
    	var nameHoraire = document.getElementById('pres0');
    	var nameAbsence = document.getElementById('ab0');
    	var nameDemiAbsence = document.getElementById('demiab0');
     
    	if (nameHoraire.checked){
    		//on vide la valeur des autres champs caché
    		document.getElementById(nameTypeAbsence).value = "";
    		document.getElementById(nameTypeDemiAbsence).value = "";
    		document.getElementById(nameDemiHoraireDebut).value = ""; 
    		document.getElementById(nameDemiHoraireFin).value = "";
     
    		if((document.getElementById('horairedm').value =="") ||(document.getElementById('horairefm').value =="")||(document.getElementById('horaireda').value =="") ||(document.getElementById('horairefa').value =="")){
    			alert("Merci de renseigner les champs");
    			return;
    		}
     
    		var horairedm = document.getElementById('horairedm').value;
    		var horairefm = document.getElementById('horairefm').value;
    		var horaireda = document.getElementById('horaireda').value;
    		var horairefa = document.getElementById('horairefa').value;
     
    		//on reconstruit ce qui doit être affiché
    		var html = "travaille de "+horairedm+" à "+horairefm+" et de "+horaireda+" à "+horairefa;
    		html = html + "<input type='hidden' id='"+nameHoraireDm+"' name='"+nameHoraireDm+"' value='"+horairedm+"' />"; 
    		html = html + "<input type='hidden' id='"+nameHoraireFm+"' name='"+nameHoraireFm+"' value='"+horairefm+"' />";
    		html = html + "<input type='hidden' id='"+nameHoraireDa+"' name='"+nameHoraireDa+"' value='"+horaireda+"' />";
    		html = html + "<input type='hidden' id='"+nameHoraireFa+"' name='"+nameHoraireFa+"' value='"+horairefa+"' />";
    		document.getElementById(nameDivHoraireModif).innerHTML=html;
     
    		//on affiche cette div et on ferme les autres
    		document.getElementById(nameDivHoraireModif).style.display='block';	
    		document.getElementById(nameDivDemiAbsenceModif).style.display='none';	
    		document.getElementById(nameDivAbsence).style.display='none';
     
     
    	}else if(nameAbsence.checked){
    		var texteAbsence = 	document.getElementById('absenceSelected').options[document.getElementById('absenceSelected').selectedIndex].text;
    		//on vide la valeur des autres champs caché
    		document.getElementById(nameHoraireDm).value = "";
    		document.getElementById(nameHoraireFm).value = "";
    		document.getElementById(nameHoraireDa).value = "";
    		document.getElementById(nameHoraireFa).value = "";
     
    		document.getElementById(nameTypeDemiAbsence).value = "";
    		//On test l'existence de la variable
    		if(document.getElementById(nameDemiHoraireDebut) != null){
    			document.getElementById(nameDemiHoraireDebut).value = "";
    		}
     
    		if(document.getElementById(nameDemiHoraireFin) != null){
    			document.getElementById(nameDemiHoraireFin).value = "";
    		}
     
     
    		if(document.getElementById('absenceSelected').value == "-1"){
    			alert("Merci de renseigner les champs");
    			return;
    		}
     
    		//on change les valeurs
    		document.getElementById(nameTypeAbsence).value=document.getElementById('absenceSelected').value;
    		var valueTypeAbsence = document.getElementById('absenceSelected').value;
     
    		//on reconstruit ce qui doit être affiché
    		var html = "Sera absent car en "+texteAbsence;
    		html = html + "<input type='hidden' id='"+nameTypeDemiAbsence+"' name='"+nameTypeDemiAbsence+"' value='"+valueTypeAbsence+"' />"; 
     
    		document.getElementById(nameDivAbsence).innerHTML=html;
     
     
    		//on affiche cette div et on ferme les autres
    		document.getElementById(nameDivHoraireModif).style.display='none';	
    		document.getElementById(nameDivDemiAbsenceModif).style.display='none';	
    		document.getElementById(nameDivAbsence).style.display='block';
     
    	}else if(nameDemiAbsence.checked){
    		var texteDemiAbsence = 	document.getElementById('demiAbsenceSelected').options[document.getElementById('demiAbsenceSelected').selectedIndex].text;
     
    		//on vide la valeur des autres champs caché
    		document.getElementById(nameHoraireDm).value = "";
    		document.getElementById(nameHoraireFm).value = "";
    		document.getElementById(nameHoraireDa).value = "";
    		document.getElementById(nameHoraireFa).value = "";
    		document.getElementById(nameTypeAbsence).value = "";
     
     
    		if((document.getElementById('horaire0debDemiAbs') != null) && (document.getElementById('horaire0FinDemiAbs')!= null)&&(document.getElementById('demiAbsenceSelected').value =="-1")){
    			alert("********* Merci de renseigner les champs *********** ");
     
    		}
     
    		//on change les valeurs
    		document.getElementById(nameTypeDemiAbsence).value=document.getElementById('demiAbsenceSelected').value;
     
    		document.getElementById(nameDemiHoraireDebut).value=document.getElementById('horaire0debDemiAbs').value;  
    		document.getElementById(nameDemiHoraireFin).value=document.getElementById('horaire0finDemiAbs').value;
     
    		var valueTypeDemiAbsence = document.getElementById('demiAbsenceSelected').value;
    		var valueDemiHoraireDebut = document.getElementById('horaire0debDemiAbs').value;
    		var valueDemiHoraireFin = document.getElementById('horaire0finDemiAbs').value;
    		var html ="";
     
     
    		var horaireMatindebDemiAbs = "";
    		var horairMatinfinDemiAbs = "";
    		var horaireApresdebDemiAbs = "";
    		var horairApresfinDemiAbs = "";
     
     
    		//on reconstruit ce qui doit être affiché
    		 alert("La valeurMatinOuApres est 2 : "+valeurMatinOuApres);
    		if(valeurMatinOuApres == "matin"){
    			horaireMatindebDemiAbs = "horaire"+index+"debMatinDemiAbs_"+idPersonne;
    			horairMatinfinDemiAbs = "horaire"+index+"finMatinDemiAbs_"+idPersonne;
    			html = html+"Sera présent de "+document.getElementById(nameDemiHoraireDebut).value+" à "+document.getElementById(nameDemiHoraireFin).value;
    			html = html+"<br>"+" et sera absent car en "+texteDemiAbsence;
    			html = html + "<input type='hidden' id='"+nameTypeDemiAbsence+"' name='"+nameTypeDemiAbsence+"' value='"+valueTypeDemiAbsence+"' />"; 
    			html = html + "<input type='hidden' id='"+horaireMatindebDemiAbs+"' name='"+horaireMatindebDemiAbs+"' value='"+valueDemiHoraireDebut+"' />"; 
    			html = html + "<input type='hidden' id='"+horairMatinfinDemiAbs+"' name='"+horairMatinfinDemiAbs+"' value='"+valueDemiHoraireFin+"' />"; 
     
    		}
     
    		else if(valeurMatinOuApres == "apres"){
     
    			horaireApresdebDemiAbs = "horaire"+index+"debApresDemiAbs_"+idPersonne;
    			horairApresfinDemiAbs = "horaire"+index+"finApresDemiAbs_"+idPersonne;
    			alert("La valeurMatinOuApres est 4 : "+valeurMatinOuApres);
    			alert("nameDemiHoraireDebut :"+document.getElementById(nameDemiHoraireDebut).value);
    			html = html+"Sera absent car en "+texteDemiAbsence;
    			html = html+"<br>"+"Sera présent de "+document.getElementById(nameDemiHoraireDebut).value+" à "+document.getElementById(nameDemiHoraireFin).value;
    			html = html + "<input type='hidden' id='"+nameTypeDemiAbsence+"' name='"+nameTypeDemiAbsence+"' value='"+valueTypeDemiAbsence+"' />"; 
    			html = html + "<input type='hidden' id='"+horaireApresdebDemiAbs+"' name='"+horaireApresdebDemiAbs+"' value='"+valueDemiHoraireDebut+"' />"; 
    			html = html + "<input type='hidden' id='"+horairApresfinDemiAbs+"' name='"+horairApresfinDemiAbs+"' value='"+valueDemiHoraireFin+"' />"; 
     
    		}
     
    		document.getElementById(nameDivDemiAbsenceModif).innerHTML=html;
     
    		//on affiche cette div et on ferme les autres
    		document.getElementById(nameDivHoraireModif).style.display='none';	
    		document.getElementById(nameDivDemiAbsenceModif).style.display='block';	
    		document.getElementById(nameDivAbsence).style.display='none';
    	}//Fin du if(nameDemiAbsence.checked)
     
     
    	 closePreview();
     
    }
    Ou je reconstruits mes différentes variables

    A quel niveau je peux mettre la fonction doCount()?

    Merci beaucoup de votre aide

Discussions similaires

  1. Réponses: 1
    Dernier message: 11/02/2015, 15h48
  2. Réponses: 0
    Dernier message: 07/08/2011, 00h42
  3. Modification des menus de la base de donnée
    Par cluster26 dans le forum Conception
    Réponses: 6
    Dernier message: 05/02/2010, 19h57
  4. Réponses: 4
    Dernier message: 05/10/2009, 12h19
  5. Réponses: 5
    Dernier message: 01/12/2006, 10h00

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