<head>
<link rel="stylesheet" type="text/css" href="Skin.css">
<style>
<!--
table{ text-align: center }
-->
</style>
</head>
<body>
<div align="center">
<script language="javascript">
var my = new Date()
//***************************************************函数开始,这是用来显示日历的***********************
function showc() {
var k=1
var j=1
var today
var tomonth
var theday=1//日期
var max
var temp
var tempday//这个月第一天的星期
document.write ("<b>" + my.getFullYear() + "-" + (my.getMonth()+1) + "</b>")
document.write ("<table border='1' width='273' height='158'>")
document.write ("<tr>")
document.write ("<td height='23' width='39'><font color='red'>Sun</font></td>")
document.write ("<td height='23' width='39'>Mon</td>")
document.write ("<td height='23' width='39'>Tue</td>")
document.write ("<td height='23' width='39'>Wed</td>")
document.write ("<td height='23' width='39'>Thu</td>")
document.write ("<td height='23' width='39'>Fri</td>")
document.write ("<td height='23' width='39'>Sat</td>")
document.write ("</tr>")
temp=my.getDate()
my.setDate(1)
//document.write (my.getDate())
tempday=my.getDay()//返回第一天是星期几
my.setDate(temp)
today=my.getDay()//返回现在星期几
switch ((my.getMonth()+1)) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
max=31
break
case 4:
case 6:
case 9:
case 11:
max=30
break
default:
max=29//这里没有考虑闰月!!
//document.write (max)
}
for(k=0k<6k++) {
document.write ("<tr>")
for(j=0j<=6j++) {
document.write ("<td height='23' width='39'>")
if(j>=(tempday)) {
tempday=0//设置为最小,相当于取消判断条件
if(theday<=max) {
document.write ("<a title=" + my.getFullYear() + "-" + (my.getMonth()+1) + "-" +theday + " target='_blank' href=detail.asp?date=" + theday + ">")
if(theday==my.getDate())
document.write ("<font color='green'>[" + theday + "]</font></a>")
else if(j==0)
document.write ("<font color='red'>" + theday + "</font></a>")
else
document.write (theday + "</a>")
theday++
}
}
document.write ("</td>")
}
document.write ("</tr>")
}
document.write ("</table>")
}
//************************************************函数结束
showc()
</script>
</div>
<body>
</html>
这个是万年历的代码
望采纳!
参考资料http://zhidao.baidu.com/question/347251775.html
把以下两个ASP文件放在同一个目录如果还有问题就hi我或Q我44467779====================这个是day.asp万年历 Date body,td { margin-left:0 margin-top:0 font-size:12px}a:link {color:#000000text-decoration: none} a:visited {color:#000000text-decoration: none} a:active {color:#000000text-decoration: none} a:hover { color:#ff3333text-decoration: none} --> function getDay(v){ window.opener.document...value=vwindow.close()return false} oldDate=request("oldDate") if not isDate(oldDate) then oldDate=date yy=year(cdate(oldDate)) mm=month(cdate(oldDate)) if request("yy")"" then yy=request("yy") if request("mm")"" then mm=request("mm") if yy="" then yy=year(date) if mm="" then mm=month(date) if mm>12 then mm=1:yy=yy+1 if mmdim m(12) m(1)=31 m(3)=31 m(5)=31 m(7)=31 m(8)=31 m(10)=31 m(12)=31 m(2)=28 m(4)=30 m(6)=30 m(9)=30 m(11)=30 if (yy mod 4=0 and yy mod 1000) or yy mod 400=0 then m(2)=29 mms=m(mm) week1=(weekday(cdate(yy &"-" &mm &"-1"))-1) %> &field=&yy=&mm=>7 &field=&mm=&yy=>3 年月 &field=&mm=&yy=>4 &field=&yy=&mm=>8 日 一 二 三 四 五 六 if week10 then response.write "" for i=1 to week1 response.write " " next end if for i=1 to mms if (i+week1-1) mod 7=0 then response.write "" response.write "" if cdate(yy &"-" &mm &"-" &i)=date() then %> style="BORDER:#CD0101 1px groovewidth:30height:16font-size:9ptbackground-color:#FFD9D9color:#CD0101" onclick="javascript:getDay('--')" title="年月日(今天)">else %> style="BORDER:#000000 1px groovewidth:30height:16font-size:9ptbackground-color:#ffffffcolor:#000000" onclick="javascript:getDay('--')" title="年月日">end if next if (mms+week1) mod 70 then for i=1 to (7-((mms+week1) mod 7)) response.write " " next end if %> =======================================这个是注册时的日期文本框测试页(万年历选择)test.asp日期 " readonly style="width:150px">" align="absmiddle" style="cursor:pointer" onClick="JavaScript:window.open('day.asp?form=form1&field=selldate&oldDate='+selldate.value,'','directorys=no,toolbar=no,status=no,menubar=no,scrollbars=no,resizable=no,width=250,height=170,top=200,left=520')">