分享
 
 
 

一个关于日期选择的很实用的小东西

王朝asp·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

以前做页面时经常需要制作日期选择框,例如出生日期、查询日期等等,通常的做法是制作三个下拉列表(select),分别用于选择年、月、日,但该方法在各方面的表现都很令人不耐烦,于是我做了这个日期选择页面,它不是组件,也不是函数,只是一个普通的ASP页面,用于返回用户选择的日期变量。

************************************************************************

<%

'day.asp

%>

<html>

<head>

<title>选择日期</title>

<style type=text/css>

<!--

body{margin:0;font-size:9pt;color:#5E639B}

td{font-size:9pt;color:#000000}

a:link {color:#000000;text-decoration: none}

a:visited {color:#000000;text-decoration: none}

a:active {color:#000000;text-decoration: none}

a:hover { color:#ff3333;text-decoration: none}

-->

</style>

<Script Language="JavaScript">

function getDay(v){

window.opener.document.<%=request.querystring("form")%>.<%=request.querystring("field")%>.value=v;

window.close();

return false;

}

</Script>

</head>

<body bgcolor=#ffffff onBlur="window.focus()">

<%

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 mm<1 then mm=12:yy=yy-1

dim 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 100<>0) or yy mod 400=0 then m(2)=29

mms=m(mm)

week1=(weekday(cdate(yy & "-" & mm & "-1"))-1)

%>

<table width=250 cellspacing=1 cellpadding=0 bgcolor=#FFDFDF align=center>

<tr>

<td colspan=7 align=center>

<table width=100% height=20 cellspacing=0 cellpadding=0>

<tr height=20>

<td width=30 align=center>

<a href=day.asp?form=<%=request("form")%>&field=<%=request("field")%>&yy=<%=(yy-1)%>&mm=<%=mm%>>

<font face=webdings style=color:#000000 title="上一年">7</font>

</a>

<td width=30 align=center>

<a href=day.asp?form=<%=request("form")%>&field=<%=request("field")%>&mm=<%=(mm-1)%>&yy=<%=yy%>>

<font face=webdings style=color:#000000 title="上一月">3</font>

</a>

<td width=130 align=center style="FONT:9pt Verdana,Geneva,sans-serif;color:#CD0101">

<b><%=yy%> 年 &nbsp; <%=mm%> 月</b>

<td width=30 align=center>

<a href=day.asp?form=<%=request("form")%>&field=<%=request("field")%>&mm=<%=(mm+1)%>&yy=<%=yy%>>

<font face=webdings style=color:#000000 title="下一月">4</font>

</a>

<td width=30 align=center>

<a href=day.asp?form=<%=request("form")%>&field=<%=request("field")%>&yy=<%=(yy+1)%>&mm=<%=mm%>>

<font face=webdings style=color:#000000 title="下一年">8</font>

</a>

</table>

<tr bgcolor=#ffffff height=20>

<td width=35 align=center bgcolor=#FFF4F4 style=color:#ff6633>日

<td width=35 align=center bgcolor=#FFF4F4>一

<td width=35 align=center bgcolor=#FFF4F4>二

<td width=35 align=center bgcolor=#FFF4F4>三

<td width=35 align=center bgcolor=#FFF4F4>四

<td width=35 align=center bgcolor=#FFF4F4>五

<td width=35 align=center bgcolor=#FFF4F4>六

<%

if week1<>0 then

response.write "<tr>"

for i=1 to week1

response.write "<td width=35 height=20 bgcolor=#ffffff>&nbsp;"

next

end if

for i=1 to mms

if (i+week1-1) mod 7=0 then response.write "<tr>"

response.write "<td width=35 height=20 align=center bgcolor=#ffffff>"

if cdate(yy & "-" & mm & "-" & i)=date() then

%>

<input type=button value=<%=i%>

style="BORDER:#CD0101 1px groove;width:30;height:16;font-size:9pt;background-color:#FFD9D9;color:#CD0101"

onclick="javascript:getDay('<%=yy%>-<%=mm%>-<%=i%>');" title="<%=yy%>年<%=mm%>月<%=i%>日(今天)">

<%

else

%>

<input type=button value=<%=i%>

style="BORDER:#000000 1px groove;width:30;height:16;font-size:9pt;background-color:#ffffff;color:#000000"

onclick="javascript:getDay('<%=yy%>-<%=mm%>-<%=i%>');" title="<%=yy%>年<%=mm%>月<%=i%>日">

<%

end if

next

if (mms+week1) mod 7<>0 then

for i=1 to (7-((mms+week1) mod 7))

response.write "<td width=35 height=20 bgcolor=#ffffff>&nbsp;"

next

end if

%>

</table><br>

<div align=center><a href="javascript:window.close()">〖关闭本窗口〗</a></div>

</body>

</html>

************************************************************************

调用day.asp页面的代码:

<form name=form1>

<input name=date1 value=<%=date()%> readonly onClick="JavaScript:window.open('day.asp?form=form1&field=date1&oldDate='+this.value,'','directorys=no,toolbar=no,status=no,menubar=no,scrollbars=no,resizable=no,width=250,height=200,top=220,left=250');"

</form>

************************************************************************

其中,打开day.asp页面时,需要传递几个参数,分别是:

1)form:日期选择框所在的表单名称,本例为form1,可根据应用自行更改

2)field:日期选择框的名称,本例为date1,可根据应用自行更改

3)olddate:日期选择框的当前值,不需改动。

我叫“积木”,欢迎和我成为朋友!

my5243@hotmail.com

http://www.ecolor99.com/jim

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有