1.多语言环境
繁体中文:
<input id="d311" class="Wdate" type="text" onFocus="WdatePicker({lang:'zh-tw'})"/>
英文
<input id="d312" class="Wdate" type="text" onFocus="WdatePicker({lang:'en'})"/>
简体中文
<input id="d313" class="Wdate" type="text" onFocus="WdatePicker({lang:'zh-cn'})"/>
2.日期的范围限制
2.1静态限制
示例1限制日期的范围是2006-09-10到2008-12-20
<input id="d411" class="Wdate" type="text" οnfοcus="WdatePicker({skin:'whyGreen',minDate:'2006-09-10',maxDate:'2008-12-20'})"/>
示例2限制日期的范围是2008-3-8 11:30:00 到2008-3-10 20:59:30
<input type="text" class="Wdate" id="d412" οnfοcus="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"/>
示例3限制日期的范围是2008年2月到 2008年10月
<input type="text" class="Wdate" id="d413" οnfοcus="WdatePicker({dateFmt:'yyyy年M月',minDate:'2008-2',maxDate:'2008-10'})"/>
示例4限制日期的范围是8:00:00 到11:30:00
<input type="text" class="Wdate" id="d414" οnfοcus="WdatePicker({dateFmt:'H:mm:ss',minDate:'8:00:00',maxDate:'11:30:00'})"/>
2.2动态限制
注意:日期格式必须与realDateFmt 和realTimeFmt 一致
获取当前日期的格式:
格式 | 说明 |
%y | 当前年 |
%M | 当前月 |
%d | 当前日 |
%ld | 本月最后一天 |
%H | 当前时 |
%m | 当前分 |
%s | 当前秒 |
#{} | 运算表达式,如:#{%d+1}:表示明天 |
#F{} | {}之间是函数可写自定义JS代码 |
示例1只能选择今天以前的日期(包括今天)
<input id="d421" class="Wdate" type="text" οnfοcus="WdatePicker({skin:'whyGreen',maxDate:'%y-%M-%d'})"/>
示例2使用了运算表达式只能选择今天以后的日期(不包括今天)
<input id="d422" class="Wdate" type="text" οnfοcus="WdatePicker({minDate:'%y-%M-#{%d+1}'})"/>
示例3只能选择本月的日期1号至本月最后一天
<input id="d423" class="Wdate" type="text" οnfοcus="WdatePicker({minDate:'%y-%M-01',maxDate:'%y-%M-%ld'})"/>
示例4只能选择今天7:00:00至明天21:00:00的日期
<input id="d424" class="Wdate" type="text" οnfοcus="WdatePicker({dateFmt:'yyyy-M-d H:mm:ss',minDate:'%y-%M-%d 7:00:00',maxDate:'%y-%M-#{%d+1} 21:00:00'})"/>
示例5使用了运算表达式只能选择 20小时前至 30小时后的日期
<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'})"/>
2.2 脚本自定义限制
注意:日期格式必须与realDateFmt 和realTimeFmt 一致系统提供了$dp.$D和$dp.$DV这两个API来辅助你进行日期运算,此外你还可以通过在#F{} 中填入你自定义的脚本,做任何你想做的日期限制
示例1前面的日期不能大于后面的日期且两个日期都不能大于2020-10-01
合同有效期从到
<input id="d4311" class="Wdate" type="text" onFocus="WdatePicker({maxDate:'#F{$dp.$D(\'d4312\')||\'2020-10-01\'}'})"/>
<input id="d4312" class="Wdate" type="text" onFocus="WdatePicker({minDate:'#F{$dp.$D(\'d4311\')}',maxDate:'2020-10-01'})"/>
注意:
两个日期的日期格式必须相同
$dp.$ 相当于document.getElementById 函数.
那么为什么里面的 '使用 \' 呢?那是因为" 和' 都被外围的函数使用了,故使用转义符\ ,否则会提示JS语法错误.
所以您在其他地方使用时注意把 \'改成 " 或者' 来使用.
#F{$dp.$D(\'d4312\')||\'2020-10-01\'} 表示当 d4312 为空时,采用 2020-10-01 的值作为最大值
示例2前面的日期+3天不能大于 后面的日期
日期从到
<input type="text" class="Wdate" id="d4321" onFocus="WdatePicker({maxDate:'#F{$dp.$D(\'d4322\',{d:-3});}'})"/>
<input type="text" class="Wdate" id="d4322" onFocus="WdatePicker({minDate:'#F{$dp.$D(\'d4321\',{d:3});}'})"/>
使用 $dp.$D函数 可以将日期框中的值,加上定义的日期差量:
两个参数: id={字符类型}需要处理的文本框的id值 , obj={对象类型}日期差量
日期差量用法:
属性y,M,d,H,m,s分别代表年月日时分秒