📄 calendar.asp
字号:
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
<style type="text/css">
<!--
td {FONT-SIZE: 12px; FONT-FAMILY: arial; TEXT-ALIGN: center}
td.dt {FONT-SIZE: 11px; FONT-FAMILY: arial; TEXT-ALIGN: center}
A{COLOR: blue}
A:hover {COLOR: red}
-->
</STYLE>
<title>日历控件</title>
<script language="javascript">
var WindowParent = window.parent;
var oCalendar = WindowParent.document.getElementById("oCalendar");
var today = new Date();
var CurrentDate, slastd;
var oEventName, oNextEventName, StartDate, LastDate, ArrWeek, ArrDefineDate, Field1, Field2
var mondays = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
today.setHours(0);
today.setMinutes(0);
today.setSeconds(0);
today.setMilliseconds(0);
String.prototype.trim = function(){
return this.replace(/(^\s*)|(\s*$)/g, "");
}
function InitCalendar(){
slastd = LastDate;
StartDate = parseDate(StartDate);
LastDate = parseDate(LastDate);
if(StartDate.getTime() >= today.getTime()){
CurrentDate = StartDate;
}else if(Field2 && Field2.value.trim()!=""){
CurrentDate = parseDate(Field2.value);
}else if(Field1 && Field1.value.trim()!=""){
CurrentDate = parseDate(Field1.value);
}else if(ArrDefineDate.trim()!=""){
CurrentDate = parseDate(ArrDefineDate.split(",")[0]);
}else{
CurrentDate = today;
}
DrawCalendar(CurrentDate.getFullYear(), CurrentDate.getMonth())
}
function DrawCalendar(y, m){
if(m>11){
y++;
m=0;
}else if(m<0){
y--;
m=11;
}
document.getElementById("now").innerText = y +"-"+ ((m+1)>9?(m+1):("0"+(m+1)));
var date = new Date(y, m, 1);
y = date.getFullYear();
m = date.getMonth();
CurrentDate = date;
var n = date.getDay();
for(var i=1;i<=n;i++){
document.getElementById("d_"+ i).innerHTML = "";
document.getElementById("d_"+ i).bgColor = "";
}
if (((y%4 == 0) && (y%100 != 0)) || (y%400 == 0)){
mondays[1] = 29;
}else{
mondays[1] = 28;
}
for(var i=n+1;i<mondays[m]+n+1;i++){
var tempd = y+"-"+((m+1)>9?(m+1):("0"+(m+1)))+"-"+((i-n)>9?(i-n):"0"+(i-n));
var dd = parseDate(tempd);
var odt = document.getElementById("d_"+ i);
if(today.getTime() > dd.getTime() || !CheckLastDate(dd) || !CheckStartDate(dd) || !noWeek(dd) || !noDefineDate(dd)){
if(today.getTime() == parseDate(tempd).getTime()){
odt.innerHTML = "<a style=\"color:red\">"+ (i-n) +"</a>";
}else{
odt.innerHTML = "<a style=\"color:gray\">"+ (i-n) +"</a>";
}
}else{
if(today.getTime() == parseDate(tempd).getTime()){
odt.innerHTML = "<a href=\"javascript:SetDate('"+tempd+"')\"><font color=red>"+ (i-n) +"</font></a>";
}else{
odt.innerHTML = "<a href=\"javascript:SetDate('"+tempd+"')\">"+ (i-n) +"</a>";
}
}
if(dd.getTime() == StartDate.getTime()){
odt.bgColor = "#CCCCCC";
}else{
odt.bgColor = "";
}
}
for(var i=mondays[m]+n+1;i<42;i++){
document.getElementById("d_"+ i).innerHTML = "";
document.getElementById("d_"+ i).bgColor = "";
}
}
function CheckLastDate(d){
if(slastd.trim()=="") return true;
return (d.getTime()<=LastDate.getTime())
}
function CheckStartDate(d){
return (d.getTime()>=StartDate.getTime())
}
function noWeek(d){
if(ArrWeek.trim() == "") return true;
var t = d.getDay();
var arr = ArrWeek.split(",")
for(var i=0;i<arr.length;i++){
if(arr[i] == t){
return true;
}
}
return false;
}
function noDefineDate(d){
if(ArrDefineDate.trim() == "") return true;
var arr = ArrDefineDate.split(",")
for(var i=0;i<arr.length;i++){
if(parseDate(arr[i]).getTime() == d.getTime()){
return true;
}
}
return false;
}
function SetDate(d){
Field1.value = d.toString();
WindowParent.HideCalendar();
if(Field2){
WindowParent.ShowCalendar(oNextEventName, "", d, slastd, ArrWeek, ArrDefineDate, Field2.id, "");
}
}
function parseDate(s)
{
var reg = new RegExp("[^0-9-]","")
if(s.search(reg)>=0)return today;
var ss=s.split("-");
if(ss.length!=3)return today;
if(isNaN(ss[0])||isNaN(ss[1])||isNaN(ss[2]))return today;
return new Date(parseInt(ss[0],10),parseInt(ss[1],10)-1,parseInt(ss[2],10));
}
</script>
</head>
<body bgColor="white" leftMargin="0" topMargin="0" marginwidth="0" marginheight="0" onConTextMenu="event.returnValue=false;" ondragstart="return false" onselectstart ="return false" onselect="document.selection.empty()" oncopy="document.selection.empty()" onbeforecopy="return false" onmouseup="document.selection.empty()">
<table id="tb_main" cellSpacing="0" cellPadding="1" bgColor="#0000FF" border="0">
<tbody>
<tr>
<td>
<table cellSpacing="1" cellpadding="2" width="100%" bgcolor="white" border="0">
<tbody>
<tr bgColor="#0000FF">
<td id="prev" width="15" height="20"><img height="9" src="prev.gif" width="5" border="0" style="cursor:hand;" onClick="DrawCalendar(CurrentDate.getFullYear(), CurrentDate.getMonth()-1)"></TD>
<td bgcolor="#0000FF" id="now" style="FONT-SIZE: 12px; COLOR: white"></TD>
<td id="next" width="15"><img height="9" src="next.gif" width="5" border="0"style="cursor:hand; " onClick="DrawCalendar(CurrentDate.getFullYear(), CurrentDate.getMonth()+1)"></td>
</tr>
</tbody>
</table>
<table cellSpacing="0" cellPadding="0" width="142" bgColor="#F0F1F5" border="0">
<tr height="18" bgColor="#ffffff">
<td width="18" bgColor="#ffffff">日</td>
<td width="18" bgColor="#ffffff">一</td>
<td width="18" bgColor="#ffffff">二</td>
<td width="18" bgColor="#ffffff">三</td>
<td width="18" bgColor="#ffffff">四</td>
<td width="18" bgColor="#ffffff">五</td>
<td width="18" bgColor="#ffffff">六</td>
</tr>
<tr height="1">
<td bgColor="#F0F1F5" colSpan="7"></td></tr>
<script language="javascript">
var tempstr = ""
for(var i=0;i<6;i++){
tempstr += "<tr height=18>";
for(var j=1;j<=7;j++){
tempstr += "<td id=d_"+(i*7+j)+" bgColor='#F0F1F5'></td>";
}
tempstr += "</tr>";
}
document.write(tempstr);
</script>
<tr height="20">
<td colspan="7">
<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td bgcolor="#0000FF" height="20"><span onClick="javascript:WindowParent.HideCalendar()" style="color:white; cursor:hand;font-size:12px;text-decoration:none;">关闭窗口</span></td>
</tr>
</table></td>
</tr>
</table>
</td>
</tr>
</tbody>
</table>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -