Bonjour

J'ai des champs input date sur lesquels je veux calculer la différence entre les deux.
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<div class="col-sm-4"><input type="text" class="form-control datepicker datedebut" name="datedebutinter[]" value="<?php echo $intermittent->datedebutFR(); ?>"> </div>
     <div class="col-sm-4"><input type="text" class="timepicker2 form-control" name="heure[]" value="<?php echo $intermittent->heure(); ?>"></div>
     <div class="col-sm-4 "><input type="text" class="form-control datepicker datefin" name="datefininter[]" value="<?php echo $intermittent->datefinFR(); ?>"> </div>
pour ce calcul j'ai cette fonction trouvé sur develeoppez.net
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
function diffdate(d1,d2){
  var WNbJours = d2.getTime() - d1.getTime();
  return Math.ceil(WNbJours/(1000*60*60*24));
  }
cela fonctionne j'ai fait ça.
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
<script type="text/javascript">
  var list=document.getElementsByClassName("confirm2");
  var datecommence=document.getElementsByClassName('datedebut');
  var datefini=document.getElementsByClassName('datefin');
  var i=0;
  var ii=0;
 function diffdate(d1,d2){
  var WNbJours = d2.getTime() - d1.getTime();
  return Math.ceil(WNbJours/(1000*60*60*24));
  }
 
  for(i=0;i<list.length;i++){
    var dateembauche=datecommence[i].value;
    var datedebauche=datefini[i].value;
 
    datecommence[i].addEventListener('click', function(){
    dateembauche=datecommence[i].value;
    });
 
    datefini[i].addEventListener('click', function(){
    dateembauche=datefini[i].value;
    });
    d1=datedebauche.split("-");
    d2=datedebauche.split("-");
    var jourdeb=parseInt(d1[0]);
    var moisdeb=parseInt(d1[1]);
    var andeb=parseInt(d1[2]);
    var jourfin=parseInt(d2[0]);
    var moisfin=parseInt(d2[1]);
    var anfin=parseInt(d2[2]);
    var datedeb= new Date(andeb,moisdeb,jourdeb);
    var datefin= new Date(anfin,moisfin,jourfin);
Mon souci c'est quand je veux récupérer les changements éventuels fait par l'utilisateur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
datecommence[i].addEventListener('click', function(){
    dateembauche=datecommence[i].value;
    });
 
    datefini[i].addEventListener('click', function(){
    dateembauche=datefini[i].value;
    });
me renvoie NULL, j'ai essayé un MOUSEOUT mais j'ai le même résultat et un CHANGE me bloque la fermeture du datepicker.