首页 > 编程语言 >【JavaScript】使用WdatePicker.js插件限选一个时间范围(例如一个月)

【JavaScript】使用WdatePicker.js插件限选一个时间范围(例如一个月)

时间:2023-01-14 22:06:09浏览次数:55  
标签:返回 插件 JavaScript js 日期 cal 补零 true dp


需求:公司处理的业务数据比较大,单张表就是几十上百万的。如果不加入指定的条件,指定的时间,限定条数的查。经过多张表的关联查询sql执行速度将会变得特别慢。之前限定时间都是通过js弹框,但是原本模块中有相似代码控制的代码,用户体验与弹框截然不同。

所以:现记录并分享

 

1.下载datepicker第三方插件

链接:

​https://pan.baidu.com/s/1uZQngPwkiIk23momaCSXlg ​

提取码:0pji 
 

2.如下代码所示:

官方文档:​​http://www.my97.net/demo/index.htm​

 

<!DOCTYPE html>
<html>
<title></title>

<!-- 引入datepicker.css -->
<link rel="stylesheet" type="text/css" href="datepicker/skin/default/datepicker.css">
<!-- 引入easyui.css -->
<link rel="stylesheet" type="text/css" href="jquery-easyui-1.5.5.4/themes/default/easyui.css">
<!-- 使用jQuery操作 -->
<script type="text/javascript" src="jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="jquery-easyui-1.5.5.4/locale/easyui-lang-zh_CN.js"></script>
<script type="text/javascript" src="jquery-easyui-1.5.5.4/jquery.easyui.min.js"></script>
<!-- 使用wdatepicker.js -->
<script type="text/javascript" src="datepicker/WdatePicker.js"></script>

<body>
<!-- class="Wdate easyui-validbox" -->
<input required="required" id="start_time" class="Wdate easyui-validatebox" >
<input required="required" id="end_time" class="Wdate easyui-validatebox" /><br><br>

<script type="text/javascript">
$("#start_time").click(function () {
WdatePicker({
el:this,
lang:'auto',
dateFmt:'yyyy-MM-dd HH:mm:ss',
// minDate:'#F{$dp.$D(\'start_time\')}',
maxDate: '#F{$dp.$D(\'end_time\')||\'%y-%M-%d %H:%m:%s\'}',
// maxDate: '#F{$dp.$D(\'end_time\')}',
readOnly: true
});
});

$("#end_time").click(function () {
WdatePicker({
el:this,
lang:'auto',
dateFmt:'yyyy-MM-dd HH:mm:ss',
minDate: '#F{$dp.$D(\'start_time\')}',
maxDate: '#F{$dp.$D(\'start_time\',{d:+31})}',
readOnly: true
});
});
</script>

</body>
</html>

 

效果图:

【JavaScript】使用WdatePicker.js插件限选一个时间范围(例如一个月)_字符串

 1,相关参数

日期格式表 
格式 说明
y 将年份表示为最多两位数字。如果年份多于两位数,则结果中仅显示两位低位数。
yy 同上,如果小于两位数,前面补零。
yyy 将年份表示为三位数字。如果少于三位数,前面补零。
yyyy 将年份表示为四位数字。如果少于四位数,前面补零。
M 将月份表示为从 1 至 12 的数字
MM 同上,如果小于两位数,前面补零。
d 将月中日期表示为从 1 至 31 的数字。
dd 同上,如果小于两位数,前面补零。
H 将小时表示为从 0 至 23 的数字。
HH 同上,如果小于两位数,前面补零。
m 将分钟表示为从 0 至 59 的数字。
mm 同上,如果小于两位数,前面补零。
s 将秒表示为从 0 至 59 的数字。
ss 同上,如果小于两位数,前面补零。
w 返回星期对应的数字 0 (星期天) - 6 (星期六) 。
D 返回星期的缩写 一 至 六 (英文状态下 Sun to Sat) 。
W 返回周对应的数字 (1 - 53) 。
WW 同上,如果小于两位数,前面补零 (01 - 53) 。
-----------------------------------------
<script>
$("#select-time").click(function () {
WdatePicker({
el: this, //点击对象id,一般可省略el
lang: 'auto', //语言选择,一般用auto
dateFmt: 'yyyy-MM-dd HH:mm:ss', //时间显示格式,年月日 时分秒,年月日就是yyyy-MM-dd
minDate: '#F{$dp.$D(\'inputstarttime\')}', //最小日期
maxDate: '%y-%M-%d', //最大日期(当前时间)
readOnly: true, //是否只读
isShowClear: true, //是否显示“清空”按钮
isShowOK: true, //是否显示“确定”按钮
isShowToday: true, //是否显示“今天”按钮
autoPickDate: true //为false时 点日期的时候不自动输入,而是要通过确定才能输入,为true时 即点击日期即可返回日期值,为null时(推荐使用) 如果有时间置为false 否则置为true
})
})
</script>

 

2,内置函数和属性

 

函数名

返回值类型

作用域

参数

描述

$dp.show

void

全局


显示日期选择框

$dp.hide

void

全局


隐藏日期选择框

$dp.unbind         (4.8beta4新增)

void

全局

el [string/object]:取消绑定的对象,可传入dom对象或者是对象的ID

让传入的对象取消日期控件绑定

$dp.$D

String

全局

id [string]: 对象的ID arg [object]: 日期差量,可以设置成 {y:[值],M:[值],d:[值],H:[值],m:[值],s:[值]} 属性 y,M,d,H,m,s 分别代表 年月日时分秒 {M:3,d:7} 表示 3个月零7天 {d:1,H:1} 表示1天多1小时

将id对应的日期框中的日期字符串,加上定义的日期差量,返回使用real格式化后的日期串 参考 示例 4-3-2

$dp.$DV

String

全局

v [string]: 日期字符串 arg [object]: 同上例的arg

将传入的日期字符串,加上定义的日期差量,返回使用real格式化后的日期串 参考 示例 4-3-3

以下函数只在事件自定义函数中有效

$dp.cal.getP

String

事件function

p [string]: 属性名称 yMdHmswWD分别代表年,月,日,时,分,秒,星期(0-6),周(1-52),星期(一-六) f [string]: format 格式字符串           设置方法参考 1.4 自定义格式

返回所指定属性被格式字符串格式化后的值[单属性],在changing,picking,clearing事件中返回选择前的值 参考 示例 1-2-2

$dp.cal.getDateStr

String

事件function

f [string]: 格式字符串,为空时使用dateFmt

返回所指定属性被格式字符串格式化后的值[整个值],在changing,picking,clearing事件中返回选择前的值

$dp.cal.getNewP

String

事件function

用法同$dp.cal.getP

返回所指定属性被格式字符串格式化后的值[单属性],在changing,picking,clearing事件中返回选择后的值

$dp.cal.getNewDateStr

String

事件function

用法同$dp.cal.getDateStr

返回所指定属性被格式字符串格式化后的值[整个值],在changing,picking,clearing事件中返回选择后的值

 

属性名

返回值类型

作用域

参数

描述

$dp.cal.date

object

事件function

$dp.cal.date.y:返回 年 $dp.cal.date.M:返回 月 $dp.cal.date.d:返回 日 $dp.cal.date.H:返回 时 $dp.cal.date.m:返回 分 $dp.cal.date.s:返回 秒

在changing,picking,clearing事件中返回选择前的日期对象

$dp.cal.newdate

object

事件function

用法同$dp.cal.date

在changing,picking,clearing事件中返回选择后的日期对象

 


 

标签:返回,插件,JavaScript,js,日期,cal,补零,true,dp
From: https://blog.51cto.com/u_12131813/6007914

相关文章

  • MC群组服开服教程系列六: 登陆插件
    简介登陆插件主要是给我们离线服务器设置的,如果是正版的服务器,不需要关注这个问题的。常见的登陆插件AuthMeReloaded(5.X):很老牌很经典的登陆插件了。可以配置的比......
  • JSP
          jsp中的Java代码应该是执行输出   重要!!!! ......
  • (8)SpringBoot整合JSP
    SpringBoot官方不推荐使用JSP来开发web页面,而是推荐如Thymeleaf,FreeMarker等模板引擎来开发,但是绝大部分做java的程序员还是习惯jsp;所以,本文先讲解SpringBoot如何支持jsp开......
  • [VueJsDev] 快速入门 - vue项目根目录配置文件
    vue项目根目录配置文件:::details目录目录​vue项目根目录配置文件​​​Part.1:package.json-入口文件​​​​Part.2:jsconfig.json-舒适度文件​​​​Part.3......
  • [VueJsDev] 快速入门 - vscode 设置推荐
    vscode设置推荐:::details目录目录​vscode设置推荐​​​Edit.1:GotoLocation​​​​Flow.2:创建tag并送到远程​​:::一些常用设置Edit.1:GotoLocationvscode......
  • [VueJsDev] 快速入门 - vscode 自动格式化
    vscode自动格式化(vue):::details目录目录​vscode自动格式化(vue)​​​Step.1:.editorconfig​​​​Step.2:jsconfig.json​​​​Step.3:.eslintrc.js​​​......
  • [VueJsDev] 快速入门 - vscode 插件推荐
    Vscode插件推荐:::details目录目录​Vscode插件推荐​​​Font.1:字体推荐​​​​Them.2:Ayu主题​​​​Them.3:SpacegrayVSCode​​​​Plug.4:Veturvue2......
  • [VueJsDev] 基础知识 - CommonJs VS ES Module
    CommonJsVSESModule:::details目录目录​CommonJsVSESModule​​​Part.1:CommonJs​​​​Part.2:ESModule​​​​Part.3:CJS对比ESM表​​​​Code.4......
  • [VueJsDev] 基础知识 - 常见编码集
    常用编码集:::details目录目录​常用编码集​​​Part.1:Unicode编码​​​​Part.2:ASCII编码​​​​Part.3:HTML实体名称​​​​Part.4:UTF8编码​​​​......
  • [VueJsDev] 基础知识 - ES6循环使用手册
    ES6循环使用手册:::details目录目录​ES6循环使用手册​​​Array.1:filter()方法​​​​Array.2:forEach​​​​Array.3:for循环​​​​Array.4:map()循环​......