后后记:没想到我这篇文章还被My97的作者看到了,指出了引用代码已经比较旧了,新的版本在引用代码有所不同。行,我这边也改一下吧。
我原文中的引用是,是3.0版本引用方法,主要用了new关键字,估计原来是控件申明为一个js的类:
<
asp:TextBox
ID
="txtDate1"
runat
="server"
CssClass
="Wdate"
onFocus
="
new WdatePicker(this,'%Y-%M-%D',true,'default')"
></
asp:TextBox
>
新的控件版本引用为:
<
asp:TextBox
ID
="txtDate1"
runat
="server"
CssClass
="Wdate"
onFocus
="
WdatePicker()"
></
asp:TextBox
>
更简单了,现在调用的接口之间改为函数,然后再函数里自己分析调用参数的字符串。所有的参数放在"()",我这里是默认的(够用了),所以什么都没有加,具体参数看作者的文档,功能很强悍。控件使用效果图里,在文本框里右侧的图片是通过CSS样式表实现的,所以想要那个图标就添加这个代码:CssClass="Wdate"。截止我发帖已经出到:My97 DatePicker 4.7 Release [2010-09-08]。
另外把下载地址直接指向到作者的网站上。保证版本最新。呵呵。
后记:这个控件,我一直用由于方便的取值方法和纯js的静态性质可以适用于任何一种动态网页技术。难能可贵的是它一直免费,另外作者的更新速度还行,一直在维护。
我个人比较喜欢这种小巧的组件像另一个国产的非常优秀的web服务项目phprpc 。比较贴切国人使用心里。希望国内多出一些好的组件,我也不喜欢我用的东西都是国外的。
贴出这个时间控件的地址:http://www.my97.net/dp/index.asp 。 截止我发帖已经出到:My97 DatePicker 4.7 Beta5 [2010-04-29]。
另外废话一下,发现这篇文字虽然老而且讲得东西没什么技术含量,但是看得人还是有的而且还在我所有文字里排名第一的,所以加上这篇后记。修改了原来比较弱智的代码呵呵。
正文:
下载地址:
ASP.NET日历控件
这是一个JS写的时间空间,在asp.net中完美使用,特别方便。另外就是它说支持firefox
这个空件的名字应该叫:My97DatePicker
使用方法:
<
head
id
="Head1"
runat
="server"
>
<
title
>
无标题页
</
title
>
<
script
language
="javascript"
src
="My97DatePicker/WdatePicker.js"
></
script
>
</
head
>
<
body
>
<
form
id
="form1"
runat
="server"
>
<
div
>
<
asp:TextBox
ID
="txtDate1"
runat
="server"
CssClass
="Wdate"
onFocus
="WdatePicker()"
></
asp:TextBox
>
至
<
asp:TextBox
ID
="txtDate2"
runat
="server"
CssClass
="Wdate"
onFocus
="WdatePicker()"
></
asp:TextBox
>
<
asp:SqlDataSource
……
<SelectParameters
>
<
asp:ControlParameter
ControlID
="txtDate1"
Name
="data1"
PropertyName
="Text"
/>
<
asp:ControlParameter
ControlID
="txtDate2"
Name
="data2"
PropertyName
="Text"
/>
</
SelectParameters
>
</
asp:SqlDataSource
>
</
div
>
</
form
>
</body>
使用很方便
上面这段代码就是我的小旅馆统计的asp.net页面的代码。为了更好用一点,一般在页面第一次执行的时候给两个文本框加上默认值:
1
2
protected
void
Page_Load(
object
sender, EventArgs e)
3
{
4
if
(
!
IsPostBack)
5
{
6
txtDate1.Text
=
System.DateTime.Now.AddDays(
-
1
).ToString(
"
yyyy-MM-dd
"
);
7
txtDate2.Text
=
System.DateTime.Now.ToString(
"
yyyy-MM-dd
"
);
8
}
9
10
}