在asp.net1.1中,微软并没有提供客户端日历控件,只提供了服务器端控件,
所以这多多少少给想用客户端控件的开发者带来了麻烦。
本人在网上下载了一个用Javascript写的客户端日历控件,经过一帆修改,忠于成了一个很好用的客户端控件。
以下为调用改日历控件,
A. 新建一个活页夹,取名为js,然后把该日历控件Calendar.js放到该活页夹下.
B. 新建一个Web窗体,Calendar.aspx,然后在HTML界面中输入以下代码:
<script language="javascript" src="../js/Calendar.js"></script>
<script language="javascript">
var CalendarWebControl = new atCalendarControl();
</script>
C. 新增一个客户端文本控件,设置runat=server,取名为txtStartDate,再新增一个图片框,用来提示用户点击的,然后在该图片框的后面加以下代码, οnclick="CalendarWebControl.show(document.getElementById('txtStartDate'),'',this);
完整的调用代码为,
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="Calendar.aspx.vb" Inherits="USE_reports.Calendar"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>Calendar</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<script language="javascript" src="../js/Calendar.js"></script>
<script language="javascript">
var CalendarWebControl = new atCalendarControl();
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<FONT face="新细明体"><INPUT id="txtStartDate" style="Z-INDEX: 101; LEFT: 24px; WIDTH: 80px; POSITION: absolute; TOP: 8px; HEIGHT: 22px"
type="text" maxLength="8" size="8" name="txtStartDate" runat="server"><IMG style="Z-INDEX: 102; LEFT: 104px; POSITION: absolute; TOP: 8px" alt="Calendar" src="../images/calendar.gif" οnclick="CalendarWebControl.show(document.getElementById('txtStartDate'),'',this);"></FONT>
</form>
</body>
</HTML>
注: z-index 指定当两个或多个元素占据同一区域时应该按什幺顺序绘制元素,如果日历控件被层给覆盖了,调整该大小就可以了
本人的邮箱是 :dai_cpu2003@163.com