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 :

Calculer des heures avec des nombres comme format 17:30


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 Calculer des heures avec des nombres comme format 17:30
    Bonjour,

    Je développe une application de gestion des horaires, qui doit notamment calculer les heures réalisés par semaine, en tenant compte des horaires contractuelles (le nombre d'heure que doit faire un salarié dans la semaine.

    J'ai développé cette méthode qui fonctionne si le nombre d'heure contractuelle est 35 ou 23 (qui dans ma base de donnée sont des varchar).

    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
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
     
    function doCount2(position){
    	//alert("position : "+position);
    	//RECUPERATION DES INDEX ET ID PERSONNE
    	var chaine = position;
    	var tableau=chaine.split("_");
    	var index = tableau[0];
    	var idPersonne = tableau[1];
    	//alert("abs param : "+abs);
     
    	var variableNbHeureAfaire = "nbHeureAfaire_"+idPersonne;
    	var nbHeureAFaire = document.forms["createForm"].elements[variableNbHeureAfaire].value;
     
     
    	var res = 0;
    	for (i=1; i<8; i++){
     
    		var pres = 'pres'+i+"_"+idPersonne;
    		var demiAbs = 'demiab'+i+"_"+idPersonne;
    		var abs = 'ab'+i+"_"+idPersonne;
     
    		var nomPres = document.getElementById(pres);	
    		var demiAbs = document.getElementById(demiAbs);	
    		var abs = document.getElementById(abs);	
     
    		var debutAM = 'horaire'+i+'dm_'+idPersonne;
    		var finAM = 'horaire'+i+'fm_'+idPersonne;
    		var debutPM = 'horaire'+i+'da_'+idPersonne;
    		var finPM = 'horaire'+i+'fa_'+idPersonne;
     
    		//R2cupération des id des absences sélectionné
    		var absenceSelectedId = "absenceSelected"+i+"_"+idPersonne;
    		var idAbs = document.getElementById(absenceSelectedId).options[document.getElementById(absenceSelectedId).selectedIndex].value;
     
    		//alert("abs : "+i+" - "+abs.checked);
    		//alert("idAbs : "+idAbs);
     
    		//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 = '';
     
    		//Durée de l'absnece
    		var dureeAbs='';
     
    		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");
    		}
     
    		if(nomPres.checked){
    			debutDemiAbs = '';
    			finDemiAbs = '';
     
    		}
     
     
    		//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){ 
     
    			debutDemiAbs_value = document.getElementById(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);
     
     
     
    		if(nomPres.checked){
    			finDemiAbs_min_res = '';
    			debutDemiAbs_min_res = '';
     
    		}
     
    		//Gestion des absences
     
    		if(abs.checked){
    			//alert("abs coché")
    			//Si on est pas dans le cas d'un repos : l'id du repos est 3
    			if((idAbs !=3)&&(idAbs !=-1)){
    				/*alert("nbHeureAFaire "+nbHeureAFaire);
    				nbHeureAFaire =(parseInt(nbHeureAFaire);
    				alert("nbHeureAFaire 2 "+nbHeureAFaire);*/
    				dureeAbs = nbHeureAFaire/5;
    				//alert("Valeur de la durée de l'absence : "+dureeAbs);
    			}
     
    		}
     
     
     
    		//calcul du temps effectué durant la demi absence en min
    		var totalDemiAbs_min = finDemiAbs_min_res - debutDemiAbs_min_res;
     
     
    		//Calcule de la valeur de l'absence    dureeAbs
    		var dureeAbs_min = (parseInt(dureeAbs*60));
    		//alert("dureeAbs_min_res : "+dureeAbs_min_res);
     
     
     
     
    		//calcul total de l'heure effectué
    		//alert("*** totalPM_min *** :"+totalPM_min);
    		//alert("*** dureeAbs_min_res *** :"+dureeAbs_min);
    		//alert("*** parseInt(totalPM_min) *** :"+parseInt(totalPM_min));
     
    		var total_Global_min = parseInt(totalAM_min) + parseInt(totalPM_min) + parseInt(totalDemiAbs_min) + parseInt(dureeAbs_min) ;
     
     
    		//alert("*** total_Global_min *** :"+total_Global_min);
    		/*alert('totalAM_min '+i+' : '+totalAM_min);
    		alert('totalPM_min '+i+' : '+totalPM_min);
    		alert('totalDemiAbs_min '+i+' : '+totalDemiAbs_min);
    		alert('dureeAbs_min '+i+' : '+dureeAbs_min);
    		alert('total_Global_min '+i+' : '+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 styleCSS="styleCSS";
     
     
     
     
    	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;
     
    	alert("nbHeureAFaire "+nbHeureAFaire);
    	alert("total_Global_heure_sem "+total_Global_heure_sem);
     
     
    	//Pour mettre en rouve 
    	if (nbHeureAFaire != total_Global_heure_sem){
     
    		document.getElementById(div_res).style.color = "red";
     
    	}else{
    		document.getElementById(div_res).style.color = "black";
    	}
     
    }
    Or je rencontre un problème lorsque que le nombre d'heure contractuelle correspond à 28:00, ou à 17:30.
    Au lieu de m'afficher le nombre d'heure réalisé, il m'indique

    Je pense que le problème vient du :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    dureeAbs = nbHeureAFaire/5;
    En effet, si le nombre d'heure à faire est de 35, çà me fait 35/5 donc la durée de l'absence est de 7 heures (ou 07:00).
    Si le nombre d'heure à faire est de 23, çà me fait 23/5 donc la durée de l'absence est de 4,6 heures ce qui me donne ensuite 4:36

    Comment dois je faire pour que ma méthode fonctionne quelques soit le format du nombre d'heure à faire (que se soit 35 ou 35:00) ? Que dois je modifier ?

    Merci de votre aide et de votre regard avisé.

  2. #2
    Membre émérite
    Avatar de Kaamo
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 165
    Points : 2 778
    Points
    2 778
    Par défaut
    NaN = Not a Number.

    NaN est retourné quand une fonction mathématique (de Math) échoue ou que parseInt ou parseFloat échouent également.

    Qu'est-ce qu'elle dit la console javascript ?

    Des pistes : Regarder ce qu'il y a là dedans pour chaque personne : debutAM, finAM, debutPM, finPM.

  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
    Merci de votre réponse

    extrait du code présent dans le formulaire :
    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
     
    <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 PR 
    	<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}"/>')" />NPR 
    	<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/> PR<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:doCount2('1_${personneDto.idPersonne}'); "/>
    					A  <s:textfield name="horaire1fm_%{personneDto.idPersonne}" id="horaire1fm_%{personneDto.idPersonne}" size="5" maxLength="5" value="00:00" 
    						onBlur= "javascript:doCount2('1_${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:doCount2('1_${personneDto.idPersonne}'); "/>
    					A <s:textfield name="horaire1fa_%{personneDto.idPersonne}" id="horaire1fa_%{personneDto.idPersonne}" size="5" maxLength="5" value="00:00" 
    						onBlur= "javascript:doCount2('1_${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"
    					onChange= "javascript:doCount2('1_${personneDto.idPersonne}'); "/>
     
    				</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>


    J'ai fait des alerte pour chacune de mes variables (debutAM, finAM, debutPM, finPM) et je récupère bien les bonnes valeurs.

    Le soucis bien du fait lorsque je clique sur absence.

    En effet, selon la convention en vigueur où je travaille, s'il y a un jour férié dans la semaine, il vaut 1/5 de la durée du contrat de travail.
    Donc, si je met 28 ou 35 en base de donnée comme valeur de la durée du contrat de travail, le calcule ce fait comme il faut.

    Comment puis je faire pour que le calcul fonctionne, si la durée du contrat de travail est 28:00 ou 35:00.

    Dans ma console d'erreur javascript, je n'ai pas de message.
    Merci de votre aide

  4. #4
    Membre émérite
    Avatar de Kaamo
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 165
    Points : 2 778
    Points
    2 778
    Par défaut
    Il faudrait le code HTML généré (affichage du code source de la page) plutôt que ce code non généré. Car avec ce code, on ne sait pas ce qui se cache dans les variables serveurs.

    J'ai fait des alerte pour chacune de mes variables (debutAM, finAM, debutPM, finPM) et je récupère bien les bonnes valeurs.
    C'est-à-dire ? Quelles sont ces valeurs ?

    Qu'est-ce qu'il y a dans nbHeureAFaire ? "35:00" ou "28:00" ? Car si c'est le cas, c'est clair que l'opération "35:00 / 5" ne fonctionnera pas. Il faut d'abord convertir le format HH:MM en secondes, diviser par 5, puis remettre le format pour l'affichage en HH:MM.

    Bien dissocier les données affichées et les données calculées, en somme.

  5. #5
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    La valeur récupérée dans l'input, si elle n'a pas le format d'un entier, sera interprétée comme une String. Donc "35:00"/5, ça ne peut pas marcher en effet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var variableNbHeureAfaire = document.forms["createForm"].elements["nbHeureAfaire_"+idPersonne].value;
    var nbHeureAFaire = variableNbHeureAfaire.split(":").map(parseFloat).reduce(function(h, m){ return h+m/60; });
    je découpe entre les deux points, je caste en entier, et je calcule heures + minutes/60 pour obtenir un nombre d'heures décimal.
    One Web to rule them all

  6. #6
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut
    Bonsoir

    Toujours écrire : parseInt( str, 10 ) lorsqu'on travaille en base 10. Avec des nombres "00:XX" c'est indispensable !

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  7. #7
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 956
    Points : 44 116
    Points
    44 116
    Par défaut
    Bonsoir,
    Citation Envoyé par danielhagnoul
    ... ou parseFloat( str, 10 )...
    il n'existe qu'une conjugaison de parseFloat : parseFloat(string)

  8. #8
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut
    Citation Envoyé par NoSmoking Voir le message
    Bonsoir,
    il n'existe qu'une conjugaison de parseFloat : parseFloat(string)
    Base 10 dans parseFloat() ? Connait pas !

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  9. #9
    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
    Merci pour toute vos réponses qui m'ont permise de trouver où été mon problème

    il fallait juste que je fasse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    nbHeureAfaire_temps = nbHeureAFaire.split(':');
    nbHeureAfaire_heure = nbHeureAfaire_temps[0];
    nbHeureAfaire_min = nbHeureAfaire_temps[1];
     
    nbHeureAfaire_min_res = (parseInt(nbHeureAfaire_heure*60))+parseInt(nbHeureAfaire_min);
     
    dureeAbs = nbHeureAfaire_min_res/5;
    et je vous met ci-dessous ma fonction complète qui marche pour celle ou ceux qui serait intéressé


    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
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
     
    function doCount2(position){
    	//alert("doCount2 : "+position);
    	//RECUPERATION DES INDEX ET ID PERSONNE
    	var chaine = position;
    	var tableau=chaine.split("_");
    	var index = tableau[0];
    	var idPersonne = tableau[1];
    	//alert("abs param : "+abs);
     
    	var variableNbHeureAfaire = "nbHeureAfaire_"+idPersonne;
    	var nbHeureAFaire = document.forms["createForm"].elements[variableNbHeureAfaire].value;
     
    	var res = 0;	
    	for (i=1; i<8; i++){
     
    		/*alert("i : "+i);
    		var demiAbs = 'demiab'+i+"_"+idPersonne;
    		//var pres = 'pres'+i+"_"+idPersonne;
    		//var abs = 'ab'+i+"_"+idPersonne;
     
    		if (i == index){
     
    		}
     
     
    		/*var nomPres = document.getElementById(pres);
    		alert("nomPres : "+nomPres);
    		var demiAbs = document.getElementById(demiAbs);	
    		var abs = document.getElementById(abs);	
     
    		alert("abs : "+abs);
    		*/
     
    		var debutAM = 'horaire'+i+'dm_'+idPersonne;
    		var finAM = 'horaire'+i+'fm_'+idPersonne;
    		var debutPM = 'horaire'+i+'da_'+idPersonne;
    		var finPM = 'horaire'+i+'fa_'+idPersonne;
     
    		//R2cupération des id des absences sélectionné
    		var absenceSelectedId = "absenceSelected"+i+"_"+idPersonne;
     
    		//Gestion des absences
    		var idAbs ="";
    		var dureeAbs = "00:00";
     
    		//alert("dureeAbs 1 : "+dureeAbs);
     
     
    		//Gestion des absences
    		var nbHeureAfaire_temps = "";
    		var nbHeureAfaire_heure ="";
    		var nbHeureAfaire_min = "";
    		var nbHeureAfaire_min_res ="";
     
    		if(document.getElementById(absenceSelectedId).value != '' && document.getElementById(absenceSelectedId).value != null && document.getElementById(absenceSelectedId).value !=3 &&   document.getElementById(absenceSelectedId).value != -1){ 
     
     
    			nbHeureAfaire_temps = nbHeureAFaire.split(':');
    			nbHeureAfaire_heure = nbHeureAfaire_temps[0];
    			nbHeureAfaire_min = nbHeureAfaire_temps[1];
     
    			nbHeureAfaire_min_res = (parseInt(nbHeureAfaire_heure*60))+parseInt(nbHeureAfaire_min);
     
    			dureeAbs = nbHeureAfaire_min_res/5;
     
    		}
     
     
    		//alert("dureeAbs 2 : "+dureeAbs);
     
    		var dureeAbs_min = dureeAbs;
     
    		//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");
    		}
     
    		/*if(nomPres.checked){
    			debutDemiAbs = '';
    			finDemiAbs = '';
     
    		}
    		*/
     
    	   	//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){ 
     
    			debutDemiAbs_value = document.getElementById(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);
     
     
    	//nomPres bouton radio
    		/*if(nomPres.checked){
    			finDemiAbs_min_res = '';
    			debutDemiAbs_min_res = '';
     
    		}
     
    		*/
     
     
    		//calcul du temps effectué durant la demi absence en min
    		var totalDemiAbs_min = finDemiAbs_min_res - debutDemiAbs_min_res;
     
     
    		//Calcule de la valeur de l'absence    dureeAbs
    		//alert("dureeAbs : "+dureeAbs);
    		//alert("dureeAbs*60 : "+(dureeAbs*60));
     
    		//alert("dureeAbs_min_res : "+dureeAbs_min_res);
     
     
     
     
    		//calcul total de l'heure effectué
    		//alert("*** totalPM_min *** :"+totalPM_min);
    		//alert("*** dureeAbs_min_res *** :"+dureeAbs_min);
    		//alert("*** parseInt(totalPM_min) *** :"+parseInt(totalPM_min));
     
    		var total_Global_min = parseInt(totalAM_min) + parseInt(totalPM_min) + parseInt(totalDemiAbs_min) + parseInt(dureeAbs_min) ;
     
     
    		//alert("*** total_Global_min *** :"+total_Global_min);
    		/*alert('totalAM_min '+i+' : '+totalAM_min);
    		alert('totalPM_min '+i+' : '+totalPM_min);
    		alert('totalDemiAbs_min '+i+' : '+totalDemiAbs_min);
    		alert('dureeAbs_min '+i+' : '+dureeAbs_min);
    		alert('total_Global_min '+i+' : '+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;
     
    	//Pour mettre en rouve 
    	if (nbHeureAFaire != total_Global_heure_sem){
     
    		document.getElementById(div_res).style.color = "red";
     
    	}else{
    		document.getElementById(div_res).style.color = "black";
    	}
     
     
    }

    et les info présent dans mon formulaire :
    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
     
    !-- 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">
     
    				</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>
    Merci encore pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Python 3.X] [Matplotlib] Afficher des matrices avec des images correspondant à un nombre.
    Par andranik92 dans le forum Programmation multimédia/Jeux
    Réponses: 0
    Dernier message: 01/06/2015, 20h48
  2. Calcul d'heures avec des conditions SI et ET
    Par mlegentil dans le forum Excel
    Réponses: 4
    Dernier message: 13/04/2014, 18h51
  3. [11gR2] Index cassé avec des heures sur des dates
    Par Golgotha dans le forum Oracle
    Réponses: 3
    Dernier message: 12/12/2013, 14h54
  4. [XL-2003] Calcul de moyenne avec des colonnes contenant des formules
    Par filsdepub dans le forum Excel
    Réponses: 20
    Dernier message: 03/08/2012, 16h36
  5. [XL-2003] calculer cumul puis fusionner des cellules avec des valeurs
    Par doudou8mc dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 06/11/2009, 16h51

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