ASP完成的日历代码实例程序
td { font-family: "宋体"; font-size:9pt}
'以下为ASP中经过该日历算法完成的详细代码
'先判别能否指定了一个年份和月份,没有则依据以后的年和月份显示
If Request("ReqDate")="" then
CurrentDate=Date
else
CurrentDate=Trim(Request("ReqDate"))
end if
pyear=year(CurrentDate)
pmonth=month(CurrentDate)
'以下的代码生成日历显示的表格头内容
%>
'">
年月
'">
日 一 二 三 四 五 六'因为ASP中没有获取指定月共有多少天的函数,因此咱们需求经过其余算法来获得,算法其实很简略,就是计算一下要显示月份的1日至下个月的1日一共相差几天
fromDate = FormatDateTime(month(CurrentDate) & "/1/" & year(CurrentDate))
toDate = FormatDateTime(DateAdd("m",1,fromDate))
'获得要显示月份的第一天为周几
nunmonthstart=weekday(fromDate)-1
'获得要显示的1日至下个月的1日一共相差几天(月份一共有多少天)
nunmonthend=DateDiff("d",fromDate,toDate)
'判别显示日历需求用几行表格来显示(每行显示7天)
if nunmonthstart+nunmonthend<36 then
maxi=36
else
maxi=43
end if
'循环生成表格并显示
i=1
do while i
iv=i-nunmonthstart
if i>nunmonthstart and i<=nunmonthend+nunmonthstart then
'假设为显示的是今天则用红色背景显示
if iv=Day(now) and month(now)=pmonth and year(now)=pyear then
response.write( "
" & iv & "")else
response.write( "
" & iv & "")end if
else
response.write( "
")end if
'假设能被7整除(每行显示7个)则输出一个换行
if i mod 7=0 then
response.write( "
")end if
i=i+1
loop
%>