<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>JS计算两个日期之间的天数</title>
</head>
<body>
<script type="text/javascript">
function btnCount_Click(){
s1 = "2006-2-18"
s2 = "2006-03-01"
alert("第一个日期;"+s1+"/n第二个日期:"+s2+"/n相差"+DateDiff(s1,s2)+"天")
}
//计算天数差的函数,通用
function DateDiff(sDate1, sDate2){ //sDate1和sDate2是2006-12-18格式
var aDate, oDate1, oDate2, iDays
aDate = sDate1.split("-")
oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]) //转换为12-18-2006格式
aDate = sDate2.split("-")
oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0])
iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 /24) //把相差的毫秒数转换为天数
return iDays
}
</script>
<input name="" type="button" οnclick="btnCount_Click()" value="计算天数" />
</body>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>JS计算两个日期之间的天数</title>
</head>
<body>
<script type="text/javascript">
function btnCount_Click(){
s1 = "2006-2-18"
s2 = "2006-03-01"
alert("第一个日期;"+s1+"/n第二个日期:"+s2+"/n相差"+DateDiff(s1,s2)+"天")
}
//计算天数差的函数,通用
function DateDiff(sDate1, sDate2){ //sDate1和sDate2是2006-12-18格式
var aDate, oDate1, oDate2, iDays
aDate = sDate1.split("-")
oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]) //转换为12-18-2006格式
aDate = sDate2.split("-")
oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0])
iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 /24) //把相差的毫秒数转换为天数
return iDays
}
</script>
<input name="" type="button" οnclick="btnCount_Click()" value="计算天数" />
</body>
</html>
另一种js计算时间差的方法:
<script>
var str1 = "2009-8-9";
var arr1 = str1.split("-");
var date1 = new Date(arr1[0],parseInt(arr1[1])-1,arr1[2]);
var str2 = "2009-8-4";
var arr2 = str2.split("-");
var date2 = new Date(arr2[0],parseInt(arr2[1])-1,arr2[2]);
alert(date1>date2);//true
//计算出相差天数
var days=Math.floor(date3/(24*3600*1000))
//alert(days);
// if(DateDiff(s1,s2)>30){
if(days>30){
alert("查询时间最多为30天");
return ;
}
</script>