[Ctrl+A 全选 提示:你可先修改部分代码,再点运行代码]
其中用到一个Calendar.js文件代码如下:
1
document.write("<div id=meizzCalendarLayer style='position: absolute; z-index: 9999; 144; height: 193; display: none'>");
2
document.write("<iframe name=meizzCalendarIframe scrolling=no frameborder=0 width=100% height=100%></iframe></div>");
3
function writeIframe(){
4
var strIframe = "<html><head><meta http-equiv='Content-Type' content='text/html; charset=gb2312'><style>"+
5
"*{font-size: 12px; font-family: 宋体}"+
6
".bg{ color: "+ WebCalendar.lightColor +"; cursor: default; background-color: "+ WebCalendar.darkColor +";}"+
7
"table#tableMain{ 142; height: 180;}"+
8
"table#tableWeek td{ color: "+ WebCalendar.lightColor +";}"+
9
"table#tableDay td{ font-weight: bold;}"+
10
"td#meizzYearHead, td#meizzYearMonth{color: "+ WebCalendar.wordColor +"}"+
11
".out { text-align: center; border-top: 1px solid "+ WebCalendar.DarkBorder +"; border-left: 1px solid "+ WebCalendar.DarkBorder +";"+
12
"border-right: 1px solid "+ WebCalendar.lightColor +"; border-bottom: 1px solid "+ WebCalendar.lightColor +";}"+
13
".over{ text-align: center; border-top: 1px solid #FFFFFF; border-left: 1px solid #FFFFFF;"+
14
"border-bottom: 1px solid "+ WebCalendar.DarkBorder +"; border-right: 1px solid "+ WebCalendar.DarkBorder +"}"+
15
"input{ border: 1px solid "+ WebCalendar.darkColor +"; padding-top: 1px; height: 18; cursor: hand;"+
16
" color:"+ WebCalendar.wordColor +"; background-color: "+ WebCalendar.btnBgColor +"}"+
17
"</style></head><body onselectstart='return false' style='margin: 0px' oncontextmenu='return false'><form name=meizz>";
18
if (WebCalendar.drag){ strIframe += "<scr"+"ipt language=javascript>"+
19
"var drag=false, cx=0, cy=0, o = parent.WebCalendar.calendar; function document.onmousemove(){"+
20
"if(parent.WebCalendar.drag && drag){if(o.style.left=='')o.style.left=0; if(o.style.top=='')o.style.top=0;"+
21
"o.style.left = parseInt(o.style.left) + window.event.clientX-cx;"+
22
"o.style.top = parseInt(o.style.top) + window.event.clientY-cy;}}"+
23
"function document.onkeydown(){ switch(window.event.keyCode){ case 27 : parent.hiddenCalendar(); break;"+
24
"case 37 : parent.prevM(); break; case 38 : parent.prevY(); break; case 39 : parent.nextM(); break; case 40 : parent.nextY(); break;"+
25
"case 84 : document.forms[0].today.click(); break;} window.event.keyCode = 0; window.event.returnValue= false;}"+
26
"function dragStart(){cx=window.event.clientX; cy=window.event.clientY; drag=true;}</scr"+"ipt>"}
27
strIframe += "<select name=tmpYearSelect onblur='parent.hiddenSelect(this)' style='z-index:1;position:absolute;top:3;left:18;display:none'"+
28
" onchange='parent.WebCalendar.thisYear =this.value; parent.hiddenSelect(this); parent.writeCalendar();'></select>"+
29
"<select name=tmpMonthSelect onblur='parent.hiddenSelect(this)' style='z-index:1; position:absolute;top:3;left:74;display:none'"+
30
" onchange='parent.WebCalendar.thisMonth=this.value; parent.hiddenSelect(this); parent.writeCalendar();'></select>"+
31
"<table id=tableMain class=bg border=0 cellspacing=2 cellpadding=0>"+
32
"<tr><td width=140 height=19 bgcolor='"+ WebCalendar.lightColor +"'>"+
33
" <table width=140 id=tableHead border=0 cellspacing=1 cellpadding=0><tr align=center>"+
34
" <td width=15 height=19 class=bg title='向前翻 1 月 快捷键:←' style='cursor: hand' onclick='parent.prevM()'><b><</b></td>"+
35
" <td width=60 id=meizzYearHead title='点击此处选择年份' onclick='parent.funYearSelect(parseInt(this.innerText, 10))'"+
36
" onmouseover='this.bgColor=parent.WebCalendar.darkColor; this.style.color=parent.WebCalendar.lightColor'"+
37
" onmouseout='this.bgColor=parent.WebCalendar.lightColor; this.style.color=parent.WebCalendar.wordColor'></td>"+
38
" <td width=50 id=meizzYearMonth title='点击此处选择月份' onclick='parent.funMonthSelect(parseInt(this.innerText, 10))'"+
39
" onmouseover='this.bgColor=parent.WebCalendar.darkColor; this.style.color=parent.WebCalendar.lightColor'"+
40
" onmouseout='this.bgColor=parent.WebCalendar.lightColor; this.style.color=parent.WebCalendar.wordColor'></td>"+
41
" <td width=15 class=bg title='向后翻 1 月 快捷键:→' onclick='parent.nextM()' style='cursor: hand'><b>></b></td></tr></table>"+
42
"</td></tr><tr><td height=20><table id=tableWeek border=1 width=140 cellpadding=0 cellspacing=0 ";
43
if(WebCalendar.drag){strIframe += "onmousedown='dragStart()' onmouseup='drag=false' onmouseout='drag=false'";}
44
strIframe += " borderColorLight='"+ WebCalendar.darkColor +"' borderColorDark='"+ WebCalendar.lightColor +"'>"+
45
" <tr align=center><td height=20>日</td><td>一</td><td>二</td><td>三</td><td>四</td><td>五</td><td>六</td></tr></table>"+
46
"</td></tr><tr><td valign=top width=140 bgcolor='"+ WebCalendar.lightColor +"'>"+
47
" <table id=tableDay height=120 width=140 border=0 cellspacing=1 cellpadding=0>";
48
for(var x=0; x<5; x++){ strIframe += "<tr>";
49
for(var y=0; y<7; y++) strIframe += "<td class=out id='meizzDay"+ (x*7+y) +"'></td>"; strIframe += "</tr>";}
50
strIframe += "<tr>";
51
for(var x=35; x<39; x++) strIframe += "<td class=out id='meizzDay"+ x +"'></td>";
52
strIframe +="<td colspan=3 class=out title='"+ WebCalendar.regInfo +"'><input style=' background-color: "+
53
WebCalendar.btnBgColor +";cursor: hand; padding-top: 4px; 100%; height: 100%; border: 0' onfocus='this.blur()'"+
54
" type=button value=' 关闭' onclick='parent.hiddenCalendar()'></td></tr></table>"+
55
"</td></tr><tr><td height=20 width=140 bgcolor='"+ WebCalendar.lightColor +"'>"+
56
" <table border=0 cellpadding=1 cellspacing=0 width=140>"+
57
" <tr><td><input name=prevYear title='向前翻 1 年 快捷键:↑' onclick='parent.prevY()' type=button value='<<'"+
58
" onfocus='this.blur()' style='meizz:expression(this.disabled=parent.WebCalendar.thisYear==1000)'><input"+
59
" onfocus='this.blur()' name=prevMonth title='向前翻 1 月 快捷键:←' onclick='parent.prevM()' type=button value='< '>"+
60
" </td><td align=center><input name=today type=button value='Today' onfocus='this.blur()' style=' 50' title='当前日期 快捷键:T'"+
61
" onclick=\"parent.returnDate(new Date().getDate() +'/'+ (new Date().getMonth() +1) +'/'+ new Date().getFullYear())\">"+
62
" </td><td align=right><input title='向后翻 1 月 快捷键:→' name=nextMonth onclick='parent.nextM()' type=button value=' >'"+
63
" onfocus='this.blur()'><input name=nextYear title='向后翻 1 年 快捷键:↓' onclick='parent.nextY()' type=button value='>>'"+
64
" onfocus='this.blur()' style='meizz:expression(this.disabled=parent.WebCalendar.thisYear==9999)'></td></tr></table>"+
65
"</td></tr><table></form></body></html>";
66
with(WebCalendar.iframe)
67
{
68
document.writeln(strIframe); document.close();
69
for(var i=0; i<39; i++)
70
{
71
WebCalendar.dayObj[i] = eval("meizzDay"+ i);
72
WebCalendar.dayObj[i].onmouseover = dayMouseOver;
73
WebCalendar.dayObj[i].onmouseout = dayMouseOut;
74
WebCalendar.dayObj[i].onclick = returnDate;
75
}
76
}
77
}
78
function WebCalendar() //初始化日历的设置
79
{
80
this.regInfo = "WEB Calendar ver 3.0 关闭的快捷键:[Esc]";
81
this.daysMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
82
this.day = new Array(39); //定义日历展示用的数组
83
this.dayObj = new Array(39); //定义日期展示控件数组
84
this.dateStyle = null; //保存格式化后日期数组
85
this.objExport = null; //日历回传的显示控件
86
this.eventSrc = null; //日历显示的触发控件
87
this.inputDate = null; //转化外的输入的日期(d/m/yyyy)
88
this.thisYear = new Date().getFullYear(); //定义年的变量的初始值
89
this.thisMonth = new Date().getMonth()+ 1; //定义月的变量的初始值
90
this.thisDay = new Date().getDate(); //定义日的变量的初始值
91
this.today = this.thisDay +"/"+ this.thisMonth +"/"+ this.thisYear; //今天(d/m/yyyy)
92
this.iframe = window.frames("meizzCalendarIframe"); //日历的 iframe 载体
93
this.calendar = getObjectById("meizzCalendarLayer"); //日历的层
94
this.dateReg = ""; //日历格式验证的正则式
95
this.yearFall = 50; //定义年下拉框的年差值
96
this.format = "yyyy-mm-dd"; //回传日期的格式
97
this.timeShow = false; //是否返回时间
98
this.drag = true; //是否允许拖动
99
this.darkColor = "#408080"; //控件的暗色
100
this.lightColor = "#FFFFFF"; //控件的亮色
101
this.btnBgColor = "#ededed"; //控件的按钮背景色
102
this.wordColor = "#000000"; //控件的文字颜色
103
this.wordDark = "#DCDCDC"; //控件的暗文字颜色
104
this.dayBgColor = "#F5F5FA"; //日期数字背景色
105
this.todayColor = "#ff3300"; //今天在日历上的标示背景色
106
this.DarkBorder = "#D4D0C8"; //日期显示的立体表达色
107
} var WebCalendar = new WebCalendar();
108
function calendar() //主调函数
109
{
110
var e = window.event.srcElement;
111
writeIframe();
112
var o = WebCalendar.calendar.style; WebCalendar.eventSrc = e;
113
if (arguments.length == 0) WebCalendar.objExport = e;
114
else WebCalendar.objExport = eval(arguments[0]);
115
WebCalendar.iframe.tableWeek.style.cursor = WebCalendar.drag ? "move" : "default";
116
var t = e.offsetTop, h = e.clientHeight, l = e.offsetLeft, p = e.type;
117
while (e = e.offsetParent){t += e.offsetTop; l += e.offsetLeft;}
118
o.display = ""; WebCalendar.iframe.document.body.focus();
119
var cw = WebCalendar.calendar.clientWidth, ch = WebCalendar.calendar.clientHeight;
120
var dw = document.body.clientWidth, dl = document.body.scrollLeft, dt = document.body.scrollTop;
121
122
if (document.body.clientHeight + dt - t - h >= ch) o.top = (p=="image")? t + h : t + h + 6;
123
else o.top = (t - dt < ch) ? ((p=="image")? t + h : t + h + 6) : t - ch;
124
if (dw + dl - l >= cw) o.left = l; else o.left = (dw >= cw) ? dw - cw + dl : dl;
125
if (!WebCalendar.timeShow) WebCalendar.dateReg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/;
126
else WebCalendar.dateReg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
127
try{
128
if (WebCalendar.objExport.value.trim() != ""){
129
WebCalendar.dateStyle = WebCalendar.objExport.value.trim().match(WebCalendar.dateReg);
130
if (WebCalendar.dateStyle == null)
131
{
132
WebCalendar.thisYear = new Date().getFullYear();
133
WebCalendar.thisMonth = new Date().getMonth()+ 1;
134
WebCalendar.thisDay = new Date().getDate();
135
alert("原文本框里的日期有错误!\n可能与你定义的显示时分秒有冲突!");
136
writeCalendar(); return false;
137
}
138
else
139
{
140
WebCalendar.thisYear = parseInt(WebCalendar.dateStyle[1], 10);
141
WebCalendar.thisMonth = parseInt(WebCalendar.dateStyle[3], 10);
142
WebCalendar.thisDay = parseInt(WebCalendar.dateStyle[4], 10);
143
WebCalendar.inputDate = parseInt(WebCalendar.thisDay, 10) +"/"+ parseInt(WebCalendar.thisMonth, 10) +"/"+
144
parseInt(WebCalendar.thisYear, 10); writeCalendar();
145
}
146
} else writeCalendar();
147
} catch(e){writeCalendar();}
148
}
149
function funMonthSelect() //月份的下拉框
150
{
151
var m = isNaN(parseInt(WebCalendar.thisMonth, 10)) ? new Date().getMonth() + 1 : parseInt(WebCalendar.thisMonth);
152
var e = WebCalendar.iframe.document.forms[0].tmpMonthSelect;
153
for (var i=1; i<13; i++) e.options.add(new Option(i +"月", i));
154
e.style.display = ""; e.value = m; e.focus(); window.status = e.style.top;
155
}
156
function funYearSelect() //年份的下拉框
157
{
158
var n = WebCalendar.yearFall;
159
var e = WebCalendar.iframe.document.forms[0].tmpYearSelect;
160
var y = isNaN(parseInt(WebCalendar.thisYear, 10)) ? new Date().getFullYear() : parseInt(WebCalendar.thisYear);
161
y = (y <= 1000)? 1000 : ((y >= 9999)? 9999 : y);
162
var min = (y - n >= 1000) ? y - n : 1000;
163
var max = (y + n <= 9999) ? y + n : 9999;
164
min = (max == 9999) ? max-n*2 : min;
165
max = (min == 1000) ? min+n*2 : max;
166
for (var i=min; i<=max; i++) e.options.add(new Option(i +"年", i));
167
e.style.display = ""; e.value = y; e.focus();
168
}
169
function prevM() //往前翻月份
170
{
171
WebCalendar.thisDay = 1;
172
if (WebCalendar.thisMonth==1)
173
{
174
WebCalendar.thisYear--;
175
WebCalendar.thisMonth=13;
176
}
177
WebCalendar.thisMonth--; writeCalendar();
178
}
179
function nextM() //往后翻月份
180
{
181
WebCalendar.thisDay = 1;
182
if (WebCalendar.thisMonth==12)
183
{
184
WebCalendar.thisYear++;
185
WebCalendar.thisMonth=0;
186
}
187
WebCalendar.thisMonth++; writeCalendar();
188
}
189
function prevY(){WebCalendar.thisDay = 1; WebCalendar.thisYear--; writeCalendar();}//往前翻 Year
190
function nextY(){WebCalendar.thisDay = 1; WebCalendar.thisYear++; writeCalendar();}//往后翻 Year
191
function hiddenSelect(e){for(var i=e.options.length; i>-1; i--)e.options.remove(i); e.style.display="none";}
192
function getObjectById(id){ if(document.all) return(eval("document.all."+ id)); return(eval(id)); }
193
function hiddenCalendar(){getObjectById("meizzCalendarLayer").style.display = "none";};
194
function appendZero(n){return(("00"+ n).substr(("00"+ n).length-2));}//日期自动补零程序
195
function String.prototype.trim(){return this.replace(/(^\s*)|(\s*$)/g,"");}
196
function dayMouseOver()
197
{
198
this.className = "over";
199
this.style.backgroundColor = WebCalendar.darkColor;
200
if(WebCalendar.day[this.id.substr(8)].split("/")[1] == WebCalendar.thisMonth)
201
this.style.color = WebCalendar.lightColor;
202
}
203
function dayMouseOut()
204
{
205
this.className = "out"; var d = WebCalendar.day[this.id.substr(8)], a = d.split("/");
206
this.style.removeAttribute('backgroundColor');
207
if(a[1] == WebCalendar.thisMonth && d != WebCalendar.today)
208
{
209
if(WebCalendar.dateStyle && a[0] == parseInt(WebCalendar.dateStyle[4], 10))
210
this.style.color = WebCalendar.lightColor;
211
else
212
this.style.color = WebCalendar.wordColor;
213
}
214
}
215
function writeCalendar() //对日历显示的数据的处理程序
216
{
217
var y = WebCalendar.thisYear;
218
var m = WebCalendar.thisMonth;
219
var d = WebCalendar.thisDay;
220
WebCalendar.daysMonth[1] = (0==y%4 && (y%100!=0 || y%400==0)) ? 29 : 28;
221
if (!(y<=9999 && y >= 1000 && parseInt(m, 10)>0 && parseInt(m, 10)<13 && parseInt(d, 10)>0)){
222
alert("对不起,你输入了错误的日期!");
223
WebCalendar.thisYear = new Date().getFullYear();
224
WebCalendar.thisMonth = new Date().getMonth()+ 1;
225
WebCalendar.thisDay = new Date().getDate(); }
226
y = WebCalendar.thisYear;
227
m = WebCalendar.thisMonth;
228
d = WebCalendar.thisDay;
229
WebCalendar.iframe.meizzYearHead.innerText = y +" 年";
230
WebCalendar.iframe.meizzYearMonth.innerText = parseInt(m, 10) +" 月";
231
WebCalendar.daysMonth[1] = (0==y%4 && (y%100!=0 || y%400==0)) ? 29 : 28; //闰年二月为29天
232
var w = new Date(y, m-1, 1).getDay();
233
var prevDays = m==1 ? WebCalendar.daysMonth[11] : WebCalendar.daysMonth[m-2];
234
for(var i=(w-1); i>=0; i--) //这三个 for 循环为日历赋数据源(数组 WebCalendar.day)格式是 d/m/yyyy
235
{
236
WebCalendar.day[i] = prevDays +"/"+ (parseInt(m, 10)-1) +"/"+ y;
237
if(m==1) WebCalendar.day[i] = prevDays +"/"+ 12 +"/"+ (parseInt(y, 10)-1);
238
prevDays--;
239
}
240
for(var i=1; i<=WebCalendar.daysMonth[m-1]; i++) WebCalendar.day[i+w-1] = i +"/"+ m +"/"+ y;
241
for(var i=1; i<39-w-WebCalendar.daysMonth[m-1]+1; i++)
242
{
243
WebCalendar.day[WebCalendar.daysMonth[m-1]+w-1+i] = i +"/"+ (parseInt(m, 10)+1) +"/"+ y;
244
if(m==12) WebCalendar.day[WebCalendar.daysMonth[m-1]+w-1+i] = i +"/"+ 1 +"/"+ (parseInt(y, 10)+1);
245
}
246
for(var i=0; i<39; i++) //这个循环是根据源数组写到日历里显示
247
{
248
var a = WebCalendar.day[i].split("/");
249
WebCalendar.dayObj[i].innerText = a[0];
250
WebCalendar.dayObj[i].title = a[2] +"-"+ appendZero(a[1]) +"-"+ appendZero(a[0]);
251
WebCalendar.dayObj[i].bgColor = WebCalendar.dayBgColor;
252
WebCalendar.dayObj[i].style.color = WebCalendar.wordColor;
253
if ((i<10 && parseInt(WebCalendar.day[i], 10)>20) || (i>27 && parseInt(WebCalendar.day[i], 10)<12))
254
WebCalendar.dayObj[i].style.color = WebCalendar.wordDark;
255
if (WebCalendar.inputDate==WebCalendar.day[i]) //设置输入框里的日期在日历上的颜色
256
{WebCalendar.dayObj[i].bgColor = WebCalendar.darkColor; WebCalendar.dayObj[i].style.color = WebCalendar.lightColor;}
257
if (WebCalendar.day[i] == WebCalendar.today) //设置今天在日历上反应出来的颜色
258
{WebCalendar.dayObj[i].bgColor = WebCalendar.todayColor; WebCalendar.dayObj[i].style.color = WebCalendar.lightColor;}
259
}
260
}
261
function returnDate() //根据日期格式等返回用户选定的日期
262
{
263
if(WebCalendar.objExport)
264
{
265
var returnValue;
266
var a = (arguments.length==0) ? WebCalendar.day[this.id.substr(8)].split("/") : arguments[0].split("/");
267
var d = WebCalendar.format.match(/^(\w{4})(-|\/)(\w{1,2})\2(\w{1,2})$/);
268
if(d==null){alert("你设定的日期输出格式不对!\r\n\r\n请重新定义 WebCalendar.format !"); return false;}
269
var flag = d[3].length==2 || d[4].length==2; //判断返回的日期格式是否要补零
270
returnValue = flag ? a[2] +d[2]+ appendZero(a[1]) +d[2]+ appendZero(a[0]) : a[2] +d[2]+ a[1] +d[2]+ a[0];
271
if(WebCalendar.timeShow)
272
{
273
var h = new Date().getHours(), m = new Date().getMinutes(), s = new Date().getSeconds();
274
returnValue += flag ? " "+ appendZero(h) +":"+ appendZero(m) +":"+ appendZero(s) : " "+ h +":"+ m +":"+ s;
275
}
276
WebCalendar.objExport.value = returnValue;
277
hiddenCalendar();
278
}
279
}
280
function document.onclick()
281
{
282
if(WebCalendar.eventSrc != window.event.srcElement) hiddenCalendar();
283
}
284
285
286
/* jeff add
287
日期输入控件的控制函数
288
*/
289
function makeDate(Obj)
290
{
291
var y=eval("document.all."+Obj+"YearInput").value;
292
var m=eval("document.all."+Obj+"MonthInput").value;
293
var d=eval("document.all."+Obj+"DayInput").value;
294
//使用 datetime 数据类型存储从 1753 年 1 月 1 日至 9999 年 12 月 31 日的日期
295
if(isDate(y,m,d) && y>=1753)
296
{
297
eval("document.all."+Obj).value=y+"-"+m+"-"+d;
298
}
299
else
300
{
301
if(y!=""||m!=""||d!="")
302
return false;
303
eval("document.all."+Obj).value = "";
304
}
305
return true;
306
}
307
function splitDate(Obj)
308
{
309
var dt=eval("document.all."+Obj).value;
310
eval("document.all."+Obj+"YearInput").value=dt.substring(0,dt.indexOf("-"));
311
eval("document.all."+Obj+"MonthInput").value=dt.substring(dt.indexOf("-")+1,dt.lastIndexOf("-"));
312
eval("document.all."+Obj+"DayInput").value=dt.substring(dt.lastIndexOf("-")+1);
313
}
314
function isDate(year,month,day)
315
{
316
month = month-1;
317
var dt = new Date(year,month,day);
318
if(year==dt.getFullYear()&&month==dt.getMonth()&&day==dt.getDate())
319
return true;
320
else
321
return false;
322
}
323
324
//显示日期输入控件(输入框名称,初始日期值,是否需要日历控件)
325
function writeDateInput(inputName,inputValue,needCalendar)
326
{
327
var dateInput = "<table cellspacing=0 cellpadding=0><tr><td><div class=cBoxnosize style='80'>"+
328
"<input class=yearInput type=text name="+inputName+"YearInput size=4 maxlength=4 onkeydown=\"if(event.keyCode==39)event.keyCode=9;\" onpropertychange=\"if(value.length==4)this.nextSibling.nextSibling.select();\" onblur=\"if(value.search(/[^0-9]/)>-1){alert('请输入数字');this.select();}\">"+
329
"-<input class=monthInput type=text name="+inputName+"MonthInput size=2 maxlength=2 onkeydown=\"if(event.keyCode==39)event.keyCode=9;if(event.keyCode==37)this.previousSibling.previousSibling.select();\" onpropertychange=\"if(value.length==2)this.nextSibling.nextSibling.select();\" onblur=\"if(value.search(/[^0-9]/)>-1){alert('请输入数字');this.select();}\">"+
330
"-<input class=dayInput type=text name="+inputName+"DayInput size=2 maxlength=2 onkeydown=\"if(event.keyCode==37)this.previousSibling.previousSibling.select();\" onblur=\"if(value.search(/[^0-9]/)>-1){alert('请输入数字');this.select();}\">"+
331
"<input type=hidden name="+inputName+" onpropertychange=\"splitDate('"+inputName+"')\">";
332
if(needCalendar==true)
333
dateInput = dateInput+"</div></td><td> <input type=button value=\"日期\" onclick=\"if(!makeDate('"+inputName+"'))alert('对不起,你输入了错误的日期!');calendar(document.all."+inputName+");\" class=cButton></td></tr></table>";
334
else
335
dateInput = dateInput+"</div></td></tr></table>";
336
document.writeln(dateInput);
337
if(inputValue!="")
338
eval("document.all."+inputName).value=inputValue;
339
}
340
341
function writeDateInputs(inputName,inputId,inputValue,needCalendar)
342
{
343
var dateInput = "<table><tr><td><div class=cBoxnosize style='80'>"+
344
"<input class=yearInput type=text name="+inputId+"YearInput size=4 maxlength=4 onkeydown=\"if(event.keyCode==39)event.keyCode=9;\" onpropertychange=\"if(value.length==4)this.nextSibling.nextSibling.select();\" onblur=\"if(value.search(/[^0-9]/)>-1){alert('请输入数字');this.select();}\">"+
345
"-<input class=monthInput type=text name="+inputId+"MonthInput size=2 maxlength=2 onkeydown=\"if(event.keyCode==39)event.keyCode=9;if(event.keyCode==37)this.previousSibling.previousSibling.select();\" onpropertychange=\"if(value.length==2)this.nextSibling.nextSibling.select();\" onblur=\"if(value.search(/[^0-9]/)>-1){alert('请输入数字');this.select();}\">"+
346
"-<input class=dayInput type=text name="+inputId+"DayInput size=2 maxlength=2 onkeydown=\"if(event.keyCode==37)this.previousSibling.previousSibling.select();\" onblur=\"if(value.search(/[^0-9]/)>-1){alert('请输入数字');this.select();}\">"+
347
"<input type=hidden name="+inputName+" id="+inputId+" onpropertychange=\"splitDate('"+inputId+"')\">";
348
if(needCalendar==true)
349
dateInput = dateInput+"</div></td><td><input type=button value=\"日期\" onclick=\"if(!makeDate('"+inputId+"'))alert('对不起,你输入了错误的日期!');calendar(document.all."+inputId+");\" class=cButton></td></tr></table>";
350
else
351
dateInput = dateInput+"</div></td></tr></table>";
352
document.writeln(dateInput);
353
if(inputValue!="")
354
eval("document.all."+inputId).value=inputValue;
355
}

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

301

302

303

304

305

306

307

308

309

310

311

312

313

314

315

316

317

318

319

320

321

322

323

324

325

326

327

328

329

330

331

332

333

334

335

336

337

338

339

340

341

342

343

344

345

346

347

348

349

350

351

352

353

354

355
