pb :fonction sur les dates

dardantfred Messages postés 13 Date d'inscription mercredi 25 mai 2005 Statut Membre Dernière intervention 8 février 2006 - 26 mai 2005 à 11:25
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 26 mai 2005 à 15:51
donc voila g un formulaire et il y a 2 dates dans des textbox sous la forme 11-03-2005 par exemple.
je veux calculer la différence de jour entre ces 2 dates
alors voila ma fonction:

------------------------------------------
function DateDiff(Date1,Date2){
ja = parseInt(frm.arrive.value.split("-")[0], 10); // jour
ma = parseInt(frm.arrive.value.split("-")[1], 10); // mois
aa = parseInt(frm.arrive.value.split("-")[2], 10); // année
jd = parseInt(frm.depart.value.split("-")[0], 10); // jour
md = parseInt(frm.depart.value.split("-")[1], 10); // mois
ad = parseInt(frm.depart.value.split("-")[2], 10); // année
var d1 = new Date(ad, md-1, jd); //31 décembre 2001 car les mois vont de 0 à 11
var d2 = new Date(aa, ma-1, ja); //2 mars 2002



var d = Math.abs( d1.getTime() - d2.getTime() );
return d /(86400000);


alert(DateDiff(d2,d1));
---------------------------------------------------
apparament, il bloque sur d1 et d2

quelqu'un pourrait-il m'aider?

2 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
26 mai 2005 à 15:48
Bonjour,

et porquoi mettre date1 et date2 et
ne pas les utiliser ?

function DateDiff(Date1,Date2){
ja = parseInt(Date1.split("-")[0], 10); // jour
ma = parseInt(Date1.split("-")[1], 10); // mois
aa = parseInt(Date1.split("-")[2], 10); // année
jd = parseInt(Date2.split("-")[0], 10); // jour
md = parseInt(Date2.split("-")[1], 10); // mois
ad = parseInt(Date2.split("-")[2], 10); // année
var d1 = new Date(ad, md-1, jd); //31 décembre 2001 car les mois vont de 0 à 11
var d2 = new Date(aa, ma-1, ja); //2 mars 2002
var d = Math.abs( d1.getTime() - d2.getTime() );
return d/(86400000);
}
alert(DateDiff("23-01-2005","26-05-2005"));

3pour essais, sinon mettre frm.
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
26 mai 2005 à 15:51
petits soucis d'affichage :

pour essais, sinon mettre frm.arrive ou depart.value
si le calcul est bon, et il faudrait contrôler la saisie ?

Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
Rejoignez-nous