WdatePicker日历控件使用方法

来源:互联网 发布:cad软件种类 编辑:程序博客网 时间:2024/05/30 23:48

1. 跨无限级框架显示 

无论你把日期控件放在哪里,你都不需要担心会被外层的iframe所遮挡进而影响客户体验,因为My97日期控件是可以跨无限级框架显示的

示例2-7 跨无限级框架演示

可无限跨越框架iframe,无论怎么嵌套框架都不必担心了,即使有滚动条也不怕

2. 民国年日历和其他特殊日历 

当年份格式设置为yyy格式时,利用年份差量属性yearOffset(默认值1911民国元年),可实现民国年日历和其他特殊日历

示例2-8 民国年演示

ITPUB个人空间w_it[kKS
<input type="text" id="d28" onClick="WdatePicker({dateFmt:'yyy/MM/dd'})"/>ITPUB个人空间hs RGT:r%CSO"|)t
ITPUB个人空间$d0[8v|:U[S oO
注意:年份格式设置成yyy,真正的日期将会减去一个差量yearOffset(默认值为:1911),如果是民国年使用默认值即可无需另外配置,如果是其他的差量,可以通过参数的形式配置

3. 编程带来方便 

如果el的值是this,可省略,即所有的el:this都可以不写 ITPUB个人空间$bB n7W"K0HW
日期框设置为disabled,禁止更改日期(不弹出选择框ITPUB个人空间 Qa+gJ4n7S
如果没有定义onpicked事件,自动触发文本框的onchange事件 ITPUB个人空间vEN*WS ?
如果没有定义oncleared事件,清空时,自动触发onchange事件

4. 其他属性 

设置readOnly属性,可指定日期框是否只读 
i@|.t&M+n)g0
设置highLineWeekDay属性,可指定是否高亮周末 
n[(c%GG,F!L8[0
设置isShowOthers属性,可指定是否显示其他月的日期 ITPUB个人空间c N G VI(vE[
加上class="Wdate"就会在选择框右边出现日期图标

多语言和自定义皮肤

 

1. 多语言支持 

通过lang属性,可以为每个日期控件单独配置语言,当然也可以通过WdatePicker.js配置全局的语言
R OWo'U2F} a0
语言列表和语言安装说明详见语言配置

示例3-1 多语言示例

繁体中文ITPUB个人空间ta.e{6Ath
<input id="d311" class="Wdate" type="text" onFocus="WdatePicker({lang:'zh-tw'})"/>

英文ITPUB个人空间6g'q0a'S,lj.BbP/z%{
<input id="d312" class="Wdate" type="text" onFocus="WdatePicker({lang:'en'})"/>

简体中文ITPUB个人空间6]J&Y;[[I4Y]
<input id="d313" class="Wdate" type="text" onFocus="WdatePicker({lang:'zh-cn'})"/>ITPUB个人空间4? o3`*ant9|#f
ITPUB个人空间gAF nV/G
注意:默认情况lang='auto',即根据浏览器的语言自动选择语言.

2. 自定义和动态切换皮肤 立刻转到皮肤中心 

通过skin属性,可以为每个日期控件单独配置皮肤,当然也可以通过WdatePicker.js配置全局的皮肤
"J)`s9@/J c1R0
皮肤列表和皮肤安装说明详见皮肤配置

示例3-2 皮肤演示

默认皮肤default: skin:'default'
1d|s_!K}T%QQ0

`eDDa]F0
<input id="d321" class="Wdate" type="text" onfocus="WdatePicker()"/>ITPUB个人空间3K x%xc1^~Yp

GVv-z1@y oK'A0
注意:WdatePicker里配置了skin='default',所以此处可省略,同理,如果你把WdatePicker里的skin配置成'whyGreen'那么在不指定皮肤的情况下都使用'whyGreen'皮肤了


3Fs+y(b zk0
whyGreen皮肤: skin:'whyGreen' ITPUB个人空间UaFu_T'_

<input id="d322" class="Wdate" type="text" onfocus="WdatePicker({skin:'whyGreen'})"/>ITPUB个人空间'P1|]J&D.j${zV
ITPUB个人空间G%T M(F)H4D7Kv
注意:更多皮肤,请到皮肤中心下载

4. 日期范围限制

1. 静态限制ITPUB个人空间 v^:gI9?G/a;c%L
注意:日期格式必须与 realDateFmt 和 realTimeFmt 一致 

你可以给通过配置minDate(最小日期),maxDate(最大日期)为静态日期值,来限定日期的范围

示例4-1-1 限制日期的范围是 2006-09-102008-12-20

ITPUB个人空间n Z1e5o$F?ii+cd
<input id="d411" class="Wdate" type="text" onfocus="WdatePicker({skin:'whyGreen',minDate:'2006-09-10',maxDate:'2008-12-20'})"/>

示例4-1-2 限制日期的范围是 2008-3-8 11:30:00 到 2008-3-10 20:59:30


PVY2U [X4D0
<input type="text" class="Wdate" id="d412" onfocus="WdatePicker({skin:'whyGreen',dateFmt:'yyyy-MM-dd HH:mm:ss',minDate:'2008-03-08 11:30:00',maxDate:'2008-03-10 20:59:30'})" value="2008-03-09 11:00:00"/>

示例4-1-3 限制日期的范围是 20082月 到 200810

ITPUB个人空间8`3umXe E/z1H
<input type="text" class="Wdate" id="d413" onfocus="WdatePicker({dateFmt:'yyyyM',minDate:'2008-2',maxDate:'2008-10'})"/>

示例4-1-4 限制日期的范围是 8:00:00 到 11:30:00


le:wY%~0
<input type="text" class="Wdate" id="d414" onfocus="WdatePicker({dateFmt:'H:mm:ss',minDate:'8:00:00',maxDate:'11:30:00'})"/>

2. 动态限制
}3SngB9n&H/{Y.n f0
注意:日期格式必须与 realDateFmt 和 realTimeFmt 一致 

你可以通过系统给出的动态变量,%y(当前年),%M(当前月)等来限度日期范围,

还可以通过#{}进行表达式运算,:#{%d+1}:表示明天
G(O;H2b_ E0Y0

cGh]+Td0
动态变量表

格式

说明

%y

当前年

%M

当前月

%d

当前日

%ld

本月最后一天

%H

当前时

%m

当前分

%s

当前秒

#{}

运算表达式,:#{%d+1}:表示明天

#F{}

{}之间是函数可写自定义JS代码

示例4-2-1 只能选择今天以前的日期(包括今天)

ITPUB个人空间6YW^BoYw
<input id="d421" class="Wdate" type="text" onfocus="WdatePicker({skin:'whyGreen',maxDate:'%y-%M-%d'})"/>

示例4-2-2 使用了运算表达式 只能选择今天以后的日期(不包括今天)


0B}M:@ /I1g5t0
<input id="d422" class="Wdate" type="text" onfocus="WdatePicker({minDate:'%y-%M-#{%d+1}'})"/>

示例4-2-3 只能选择本月的日期1号至本月最后一天

ITPUB个人空间7_/L{1Q#E*eOh
<input id="d423" class="Wdate" type="text" onfocus="WdatePicker({minDate:'%y-%M-01',maxDate:'%y-%M-%ld'})"/>

示例4-2-4 只能选择今天7:00:00至明天21:00:00的日期

ITPUB个人空间+f/B&B*Fe6g
<input id="d424" class="Wdate" type="text" onfocus="WdatePicker({dateFmt:'yyyy-M-d H:mm:ss',minDate:'%y-%M-%d 7:00:00',maxDate:'%y-%M-#{%d+1} 21:00:00'})"/>

示例4-2-5 使用了运算表达式 只能选择 20小时前 至 30小时后 的日


GI:u m r/PEf0
<input id="d425" class="Wdate" type="text" onClick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm',minDate:'%y-%M-%d #{%H-20}:%m:%s',maxDate:'%y-%M-%d #{%H+30}:%m:%s'})"/>

1. 脚本自定义限制
IA1U{MuWj*Wn:q0
注意:日期格式必须与 realDateFmt 和 realTimeFmt 一致 

系统提供了$dp.$D$dp.$DV这两个API来辅助你进行日期运算,此外你还可以通过在 #F{} 中填入你自定义的脚本,做任何你想做的日期限制

示例4-3-1 前面的日期不能大于后面的日期且两个日期都不能大于 2020-10-01

合同有效期从 到 
/O x!q2|HNa?6dKp0
<input id="d4311" class="Wdate" type="text" onFocus="WdatePicker({maxDate:'#F{$dp.$D(/'d4312/')||/'2020-10-01/'}'})"/> 
$b6i,A}/kq0
<input id="d4312" class="Wdate" type="text" onFocus="WdatePicker({minDate:'#F{$dp.$D(/'d4311/')}',maxDate:'2020-10-01'})"/>
ES'k,ZkG0
ITPUB个人空间0Z%i:{Y(w v4}:{3q
注意:ITPUB个人空间$H6m+Ogn#b _.S2s
两个日期的日期格式必须相同ITPUB个人空间qw(v.ja8H ?$s/q,sI
ITPUB个人空间:`{9v]-Cr
$dp.$ 相当于 document.getElementById 函数.
L k;f;rKV9W0
那么为什么里面的 使用 /' 那是因为 和 都被外围的函数使用了,故使用转义符 / ,否则会提示JS语法错误.ITPUB个人空间 Zpvu8m TZ#M
所以您在其他地方使用时注意把 /' 改成 或者 来使用.
0mC#?:b/[0
ITPUB个人空间z)|P9UyP[
#F{$dp.$D(/'d4312/')||/'2020-10-01/'} 表示当 d4312 为空时采用 2020-10-01

原创粉丝点击