主调用函数是 setday(this,[object])和setday(this),[object]是控件输出的控件名,举两个例子:
一、<input name=txt><input type=button value=setday οnclick="setday(this,document.all.txt)">
二、<input οnfοcus="setday(this)">
手动调整了 分 和 秒 的初始值为0,也可手动调整回取现在时间得 分 和 秒
//
主调用函数是 setday(this,[object])和setday(this),[object]是控件输出的控件名,举两个例子:
//
一、<input name=txt><input type=button value=setday οnclick="setday(this,document.all.txt)">
//
二、<input οnfοcus="setday(this)">
var
bMoveable
=
true
;
var
strFrame;
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
document.writeln(
'
<iframe id=endDateLayer frameborder=0 width=180 height=220 style="position: absolute; z-index: 9998; display: none"></iframe>
'
);
strFrame
=
'
<style>
'
;
strFrame
+=
'
INPUT.button{BORDER-RIGHT: #63A3E9 1px solid;BORDER-TOP: #63A3E9 1px solid;BORDER-LEFT: #63A3E9 1px solid;
'
;
strFrame
+=
'
BORDER-BOTTOM: #63A3E9 1px solid;BACKGROUND-COLOR: #63A3E9;font-family:宋体;}
'
;
strFrame
+=
'
TD{FONT-SIZE: 9pt;font-family:宋体;}
'
;
strFrame
+=
'
</style>
'
;
strFrame
+=
'
<scr
'
+
'
ipt>
'
;
strFrame
+=
'
var datelayerx,datelayery;
'
;
strFrame
+=
'
var bDrag;
'
;
strFrame
+=
'
function document.onmousemove()
'
;
strFrame
+=
'
{if(bDrag && window.event.button==1)
'
;
strFrame
+=
'
{var DateLayer=parent.document.all.endDateLayer.style;
'
;
strFrame
+=
'
DateLayer.posLeft += window.event.clientX-datelayerx;
'
;
strFrame
+=
'
DateLayer.posTop += window.event.clientY-datelayery;}}
'
;
strFrame
+=
'
function DragStart()
'
;
strFrame
+=
'
{var DateLayer=parent.document.all.endDateLayer.style;
'
;
strFrame
+=
'
datelayerx=window.event.clientX;
'
;
strFrame
+=
'
datelayery=window.event.clientY;
'
;
strFrame
+=
'
bDrag=true;}
'
;
strFrame
+=
'
function DragEnd(){
'
;
strFrame
+=
'
bDrag=false;}
'
;
strFrame
+=
'
</scr
'
+
'
ipt>
'
;
strFrame
+=
'
<div style="z-index:9999;position: absolute; left:0; top:0;" onselectstart="return false">
'
;
strFrame
+=
'
<span id=tmpSelectYearLayer style="z-index: 9999;position: absolute;top: 3; left: 19;display: none"></span>
'
;
strFrame
+=
'
<span id=tmpSelectMonthLayer style="z-index: 9999;position: absolute;top: 3; left: 78;display: none"></span>
'
;
strFrame
+=
'
<span id=tmpSelectHourLayer style="z-index: 9999;position: absolute;top: 188; left: 35px;display: none"></span>
'
;
strFrame
+=
'
<span id=tmpSelectMinuteLayer style="z-index:9999;position:absolute;top: 188; left: 77px;display: none"></span>
'
;
strFrame
+=
'
<span id=tmpSelectSecondLayer style="z-index:9999;position:absolute;top: 188; left: 119px;display: none"></span>
'
;
strFrame
+=
'
<table border=1 cellspacing=0 cellpadding=0 width=142 height=160 bordercolor=#63A3E9 bgcolor=#63A3E9 >
'
;
strFrame
+=
'
<tr><td width=142 height=23 bgcolor=#FFFFFF>
'
;
strFrame
+=
'
<table border=0 cellspacing=1 cellpadding=0 width=158 height=23>
'
;
strFrame
+=
'
<tr align=center >
'
;
strFrame
+=
'
<td width=16 align=center bgcolor=#63A3E9 style="font-size:12px;cursor: hand;color: #ffffff"
'
;
strFrame
+=
'
οnclick="parent.meizzPrevM()" title="向前翻 1 月" ><b ><</b></td>
'
;
strFrame
+=
'
<td width=60 align="center" bgcolor="#63A3E9" style="font-size:12px;cursor:hand"
'
;
strFrame
+=
'
οnmοuseοver="style.backgroundColor='#aaccf3'"
'
;
strFrame
+=
'
οnmοuseοut="style.backgroundColor='#63A3E9'"
'
;
strFrame
+=
'
οnclick="parent.tmpSelectYearInnerHTML(this.innerText.substring(0,4))"
'
;
strFrame
+=
'
title="点击这里选择年份"><span id=meizzYearHead></span></td>
'
;
strFrame
+=
'
<td width=48 align="center" style="font-size:12px;font-color: #ffffff;cursor:hand"
'
;
strFrame
+=
'
bgcolor="#63A3E9" οnmοuseοver="style.backgroundColor='#aaccf3'"
'
;
strFrame
+=
'
οnmοuseοut="style.backgroundColor='#63A3E9'"
'
;
strFrame
+=
'
οnclick="parent.tmpSelectMonthInnerHTML(this.innerText.length==3?this.innerText.substring(0,1):this.innerText.substring(0,2))"
'
;
strFrame
+=
'
title="点击这里选择月份"><span id=meizzMonthHead ></span></td>
'
;
strFrame
+=
'
<td width=16 bgcolor=#63A3E9 align=center style="font-size:12px;cursor: hand;color: #ffffff"
'
;
strFrame
+=
'
οnclick="parent.meizzNextM()" title="向后翻 1 月" ><b >></b></td>
'
;
strFrame
+=
'
</tr>
'
;
strFrame
+=
'
</table></td></tr>
'
;
strFrame
+=
'
<tr><td width=142 height=18 >
'
;
strFrame
+=
'
<table border=0 cellspacing=0 cellpadding=2 bgcolor=#63A3E9
'
+
(bMoveable
?
'
οnmοusedοwn="DragStart()" οnmοuseup="DragEnd()"
'
:
''
);
strFrame
+=
'
BORDERCOLORLIGHT=#63A3E9 BORDERCOLORDARK=#FFFFFF width=140 height=20 style="cursor:
'
+
(bMoveable
?
'
move
'
:
'
default
'
)
+
'
">
'
;
strFrame
+=
'
<tr><td style="font-size:12px;color:#ffffff" width=20> 日</td>
'
;
strFrame
+=
'
<td style="font-size:12px;color:#FFFFFF" > 一</td><td style="font-size:12px;color:#FFFFFF"> 二</td>
'
;
strFrame
+=
'
<td style="font-size:12px;color:#FFFFFF" > 三</td><td style="font-size:12px;color:#FFFFFF" > 四</td>
'
;
strFrame
+=
'
<td style="font-size:12px;color:#FFFFFF" > 五</td><td style="font-size:12px;color:#FFFFFF" > 六</td></tr>
'
;
strFrame
+=
'
</table></td></tr>
'
;
strFrame
+=
'
<tr ><td width=142 height=120 >
'
;
strFrame
+=
'
<table border=1 cellspacing=2 cellpadding=2 BORDERCOLORLIGHT=#63A3E9 BORDERCOLORDARK=#FFFFFF bgcolor=#fff8ec width=140 height=120 >
'
;
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
var
n
=
0
;
for
(j
=
0
;j
<
5
;j
++
)
...
{ strFrame+= ' <tr align=center >'; for (i=0;i<7;i++)...{
strFrame+='<td width=20 height=20 id=meizzDay'+n+' style="font-size:12px" οnclick=parent.meizzDayClick(this.innerText,0)></td>';n++;}
strFrame+='</tr>';}
strFrame
+=
'
<tr align=center >
'
;
for
(i
=
35
;i
<
37
;i
++
)strFrame
+=
'
<td width=20 height=20 id=meizzDay
'
+
i
+
'
style="font-size:12px" οnclick="parent.meizzDayClick(this.innerText,0)"></td>
'
;
strFrame
+=
'
<td colspan=5 align=right style="color:#1478eb"><span οnclick="parent.setNull()" style="font-size:12px;cursor: hand"
'
;
strFrame
+=
'
οnmοuseοver="style.color='#ff0000'" οnmοuseοut="style.color='#1478eb'" title="将日期置空">置空</span> <span οnclick="parent.meizzToday()" style="font-size:12px;cursor: hand"
'
;
strFrame
+=
'
οnmοuseοver="style.color='#ff0000'" οnmοuseοut="style.color='#1478eb'" title="当前日期时间">当前</span> <span style="cursor:hand" id=evaAllOK οnmοuseοver="style.color='#ff0000'" οnmοuseοut="style.color='#1478eb'" οnclick="parent.closeLayer()" title="关闭日历">关闭 </span></td></tr>
'
;
strFrame
+=
'
</table></td></tr><tr ><td >
'
;
strFrame
+=
'
<table border=0 cellspacing=1 cellpadding=0 width=100% bgcolor=#FFFFFF height=22 >
'
;
strFrame
+=
'
<tr bgcolor="#63A3E9"><td id=bUseTimeLayer width=30 style="cursor:hand" title="点击这里启用/禁用时间"
'
;
strFrame
+=
'
οnmοuseοver="style.backgroundColor='#aaccf3'" align=center οnmοuseοut="style.backgroundColor='#63A3E9'"
'
;
strFrame
+=
'
οnclick="parent.UseTime(this)">
'
;
strFrame
+=
'
<span></span></td>
'
;
strFrame
+=
'
<td style="cursor:hand" οnclick="parent.tmpSelectHourInnerHTML(this.innerText.length==3?this.innerText.substring(0,1):this.innerText.substring(0,2))"
'
;
strFrame
+=
'
οnmοuseοver="style.backgroundColor='#aaccf3'" οnmοuseοut="style.backgroundColor='#63A3E9'"
'
;
strFrame
+=
'
title="点击这里选择时间" align=center width=42>
'
;
strFrame
+=
'
<span id=meizzHourHead></span></td>
'
;
strFrame
+=
'
<td style="cursor:hand" οnclick="parent.tmpSelectMinuteInnerHTML(this.innerText.length==3?this.innerText.substring(0,1):this.innerText.substring(0,2))"
'
;
strFrame
+=
'
οnmοuseοver="style.backgroundColor='#aaccf3'" οnmοuseοut="style.backgroundColor='#63A3E9'"
'
;
strFrame
+=
'
title="点击这里选择时间" align=center width=42>
'
;
strFrame
+=
'
<span id=meizzMinuteHead></span></td>
'
;
strFrame
+=
'
<td style="cursor:hand" οnclick="parent.tmpSelectSecondInnerHTML(this.innerText.length==3?this.innerText.substring(0,1):this.innerText.substring(0,2))"
'
;
strFrame
+=
'
οnmοuseοver="style.backgroundColor='#aaccf3'" οnmοuseοut="style.backgroundColor='#63A3E9'"
'
;
strFrame
+=
'
title="点击这里选择时间" align=center width=42>
'
;
strFrame
+=
'
<span id=meizzSecondHead></span></td>
'
;
strFrame
+=
'
</tr></table></td></tr></table></div>
'
;
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
window.frames.endDateLayer.document.writeln(strFrame);
window.frames.endDateLayer.document.close();
//
解决ie进度条不结束的问题
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
//
==================================================== WEB 页面显示部分 ======================================================
var
outObject;
var
outButton;
//
点击的按钮
var
outDate
=
""
;
//
存放对象的日期
var
bUseTime
=
false
;
//
是否使用时间
var
odatelayer
=
window.frames.endDateLayer.document.all;
//
存放日历对象
var
odatelayer
=
window.endDateLayer.document.all;
//
odatelayer.bUseTimeLayer.innerText="NO";
bImgSwitch();
odatelayer.bUseTimeLayer.innerHTML
=
bImg;
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
function
setday(tt,obj)
//
主调函数
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
...
{
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
if (arguments.length > 2)...{alert("对不起!传入本控件的参数太多!");return;}
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
if (arguments.length == 0)...{alert("对不起!您没有传回本控件任何参数!");return;}
var dads = document.all.endDateLayer.style;
var th = tt;
var ttop = tt.offsetTop; //TT控件的定位点高
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
var thei = tt.clientHeight; //TT控件本身的高
var tleft = tt.offsetLeft; //TT控件的定位点宽
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
var ttyp = tt.type; //TT控件的类型
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
while (tt = tt.offsetParent)...{ttop+=tt.offsetTop; tleft+=tt.offsetLeft;}
dads.top = (ttyp=="image") ? ttop+thei : ttop+thei+6;
dads.left = tleft;
outObject = (arguments.length == 1) ? th : obj;
outButton = (arguments.length == 1) ? null : th; //设定外部点击的按钮
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
//根据当前输入框的日期显示日历的年月
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
var reg = /^(d+)-(d...{
1,2})-(d...{
1,2}