


var itemDt = new Date(itemDtParts[2] + "-" + itemDtParts[1] + "-" + itemDtParts[0]);
ils sont ou les 3 paramètres ???
Sinon il y a plusieurs choses à prendre en considération :
1) les mois en js commencent à 0 => janvier =0
il faut donc le corriger en entrée avec -1 et en sortie avec +1
2) en js (comme dans d'autres langages) le string 08 est interprété comme un octal et retournera 10
il faut donc le parser en décimal parseInt("08",10) =>retourne 8
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
| <html>
<head>
<title>Nouvelle page 1</title>
<script type="text/javascript">
function lz(x){
return x.toString().replace(/^(\d)$/,'0$1')
}
function ajoute(){
indate = document.getElementById("entree").value;
var itemDtParts = indate.split("-");
nb=document.getElementById('jours').value;
var itemDt = new Date(parseInt(itemDtParts[2],10), parseInt(itemDtParts[1],10)-1, parseInt(itemDtParts[0],10)+ +nb);
alert(itemDt.toLocaleString())
document.getElementById("res").value = lz(itemDt.getDate())+"-"+lz(itemDt.getMonth()+1)+"-"+itemDt.getFullYear()
}
</script>
</head>
<body>
date de départ :<input type="text" id="entree" value="27-08-2012" readonly /><br/>
nbre de jours: <input type="text" id="jours" value="" /><br/>
<input type="button" onclick="ajoute()" value="calcul" /><br/>
<input type="text" id="res" value="" /><br/>
</body>
</html> |
Partager