日期:2014-05-16  浏览次数:20422 次

My97DatePicker js日期时间控件一些简单用法
申明:这篇文章是从别人的QQ空间日志里面转载来的,内容在QQ空间日志里面排版比较好看,复制到这里不太好看,自己也转载到了QQ空间里面,可以去自己QQ空间里查看,更好看些,地址:http://user.qzone.qq.com/1006951610/2
另外本控件的组件包My97DatePicker组件包也已下载下来并传到了网盘里面,下载地址:
http://pan.baidu.com/s/1qWnUT9U




一. 说明
1、下载My97DatePicker组件包

2、在页面中引入该组件js文件:
    <script type="text/javascript" src="My97DatePicker/WdatePicker.js"></script>

3、页面使用两个方式:
    常规调用:  <input id="d11" type="text" onClick="WdatePicker()"/>
    图标触发:
     <input id="d12" type="text"/>
     <img onclick="WdatePicker({el:$dp.$('d12')})" src="My97DatePicker/skin/datePicker.gif" _fcksavedurl="My97DatePicker/skin/datePicker.gif" width="16" height="22" align="absmiddle">
     注:$dp.$ 相当于 document.getElementById



二. 功能及示例
1. 常规功能
支持多种调用模式
除了支持常规在input单击或获得焦点调用外,还支持使用其他的元素如:<img><div>等触发WdatePicker函数来调用弹出日期框

示例1-1-1 常规调用

<input id="d11" type="text" onClick="WdatePicker()"/>

示例1-1-2 图标触发
 
<input id="d12" type="text"/>
<img onclick="WdatePicker({el:$dp.$('d12')})" src="skin/datePicker.gif" width="16" height="22" align="absmiddle">
注:$dp.$ 相当于 document.getElementById
$dp.$ 的详细用法可以参考内置函数

下拉,输入,导航选择日期
年月时分秒输入框都具备以下三种特性
1. 通过导航图标选择


2. 直接使用键盘输入数字


3. 直接从弹出的下拉框中选择


另:年份输入框有智能提示功能,当用户连续点击同一个导航按钮5次时,会自动弹出年份下拉框

支持周显示
可以通过配置isShowWeek属性决定是否限制周,并且在返回日期的时候还可以通过自带的自定义事件和API函数返回选择的周


示例1-2-1 周显示简单应用

<input id="d121" type="text" onfocus="WdatePicker({isShowWeek:true})"/>

示例1-2-2 利用onpicked事件把周赋值给另外的文本框
    您选择了第  (W格式)周, 另外您可以使用WW格式:  周
<input type="text" class="Wdate" id="d122" onFocus="WdatePicker({isShowWeek:true,onpicked:function() {$dp.$('d122_1').value=$dp.cal.getP('W','W');$dp.$('d122_2').value=$dp.cal.getP('W','WW');}})"/>

onpicked 用法详见自定义事件
$dp.cal.getP 用法详见内置函数

只读开关,高亮周末功能
设置readOnly属性 true 或 false 可指定日期框是否只读
设置highLineWeekDay属性 ture 或 false 可指定是否高亮周末

操作按钮自定义
清空按钮和今天按钮,可以根据需要进行自定义,它们分别对应 isShowClear 和 isShowToday 默认值都是true

示例1-5 禁用清空功能
最好把readOnly置为true,否则即使隐藏了清空按钮,用户依然可以在输入框里把值delete掉

<input class="Wdate" type="text" id="d15" onFocus="WdatePicker({isShowClear:false,readOnly:true})"/>

自动选择显示位置
当控件处在页面边界时,它会自动选择显示的位置,所以没有必要担心弹出框会被页面边界遮住的问题了.

自定义弹出位置
当控件处在页面边界时,它会自动选择显示的位置.此外你还可以使用position参数对弹出位置做调整.


示例1-6 通过position属性,自定义弹出位置
使用positon属性指定,弹出日期的坐标为{left:100,top:50}

<input class="Wdate" type="text" id="d16" onfocus="WdatePicker({position:{left:100,top:50}})"/>

position属性的详细用法详见属性表

2. 特色功能
平面显示
日期控件支持平面显示功能,只要设置一下eCont属性就可以把它当作日历来使用了,无需触发条件,直接显示在页面上


示例2-1 平面显示演示
<div id="div1">


<script>
WdatePicker({eCont:'div1',onpicked:function(dp){alert('你选择的日期是:'+dp.cal.getDateStr())}})
</script>

$dp.cal.getDateStr 用法详见内置函数
支持多种容器
除了可以将值返回给input以外,还可以通过配置el属性将值返回给其他的元素(如:textarea,div,span)等,带有innerHTML属性的HTML元素

示例2-2 将日期返回到中
2008-01-01

代码:
<span id="demospan">2008-01-01
<img onClick="WdatePicker({el:'demospan'})" src="My97DatePicker/skin/datePicker.gif" width="16" height="22" align="absmiddle" style="cursor:pointer" />

起始日期功能
注意:日期格式必须与 realDateFmt 和 realTimeFmt 一致
有时在项目中需要选择生日之类的日期,而默认点开始日期都是当前日期,导致年份选择非常麻烦,你可以通过起始日期功能加上配置alwaysUseStartDate属性轻松解决此类问题

示例2-3-1 起始日期简单应用
默认的起始日期为 1980-05-01
当日期框为空值时,将使用 1980-05-01 做为起始日期


<inp