My97DatePicker 使用及配置

1、官网网址 http://www.my97.net进入官网找到‘’下载‘’,下载zip文件

2、具体使用,解压下载的zip文件,将整个文件夹放入项目中,勿动文件夹中的任何文件,以java为例,放到项目webapp目录下引用,注意引用时要先引用jquery.js,再引用包中的WdatePicker.js文件。

<script type="text/javascript" src="../js/jquery-1.8.0.min.js"></script>
<script type="text/javascript" src="../js/My97DatePicker/WdatePicker.js"></script><!--自己项目路径-->
  • 1
  • 2
  • 3

3、常用的配置

简单用法:

<input id="d244_2" type="text" class="Wdate" onfocus="WdatePicker({lang:'zh-cn',dateFmt:'yyyy-MM-dd HH:mm:ss'})"/>

即可使用;

  • 利用onclick或onfocus事件触发
<input id="d11" type="text" onClick="WdatePicker()"/>
示例1-1-2 图标触发


<input id="d12" type="text"/>
<img onclick="WdatePicker({el:'d12'})" src="../skin/datePicker.gif" width="16" height="22" align="absmiddle">
注意:只需要传入控件的id即可  el:绑定控件
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 实际的格式与显示的格式,多用于传入后台的格式与显示不符的情况
<input id="d244" type="text" class="Wdate" onfocus="WdatePicker({dateFmt:'yyyy年M月d日',vel:'d244_2'})"/>


注意:在实际应用中,一般会把vel指定为一个hidden控件,这里是为了把真实值展示出来,所以使用文本框
关键属性: vel 指定一个控件或控件的ID,必须具有value属性(如input),用于存储真实值(也就是realDateFmt和realTimeFmt格式化后的值)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 日期开始时间不大于结束时间等限制
<input type="text" class="Wdate" id="d4321" onFocus="WdatePicker({maxDate:'#F{$dp.$D(\'d4322\');}'})"/>
<input type="text" class="Wdate" id="d4322" onFocus="WdatePicker({minDate:'#F{$dp.$D(\'d4321\');}'})"/>
注意:
两个日期的日期格式必须相同
$dp.$ 相当于 document.getElementById 函数.

使用 $dp.$D 函数 可以将日期框中的值,加上定义的日期差量:
两个参数: id={字符类型}需要处理的文本框的id值 , obj={对象类型}日期差量
日期差量用法:#F{$dp.$D(\'d4321\',{d:3});}
属性y,M,d,H,m,s分别代表年月日时分秒
如 
为空时,表示直接取值,不做差量(示例4-3-1中的参数就是空的)
{M:5,d:7} 表示 五个月零7天
{y:1,d:-3} 表示 1年少3天
{d:1,H:1} 表示一天多1小时
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • onpicked函数

此处是在工作时遇到的,要求开始时间选择之后,结束时间默认填写为当前时间加1天的0点。

<input id="stTime" class="Wdate"  
onfocus="var ed=$dp.$('endTime');
        WdatePicker({dateFmt:\'yyyy-MM-dd HH:mm:ss\',
        onpicked:function(dp){
        if(ed.value == null|| ed.value==\'\'){
            //changeDate做时间加一天的处理,此处不写了。。。
            ed.value=changeDate(dat);
        }
        //此处最好联动的调用结束时间的控件,由于My97点击控件时需按两下才能选中,
        //如果不调的话,日历不消失。
        ed.focus();
        })" />
<input id="endTime" class="Wdate" onfocus="
        WdatePicker(
            {dateFmt:\'yyyy-MM-dd HH:mm:ss\',
            realFmt:\'yyyy-MM-dd HH:mm:ss\',
            minDate:\'#F{$dp.$D(stTime)}\'})" />
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

其中 onpicked后的函数可单独提出写。

总结:高级用法可参阅官网~

猜你喜欢

转载自blog.csdn.net/qq_38122518/article/details/80083884