后台开发,一般都是有筛选条件的查询,那么问题就来了,根据日期范围搜索的情况下,插件要怎么选????
这个是最开始,我采用的是两个时间插件,其他也没啥,就是运营部门使用起来可能感觉太麻烦,为啥不能一次让我选了,还有说老是忘记选择结束时间,然后就有了我接下来的工作。。。
在此,给大家推荐一款很好使用的日期与时间组件,你想要的功能它都有,很不错的
Layui
layui(谐音:类UI) 是一款采用自身模块规范编写的前端 UI 框架,遵循原生 HTML/CSS/JS 的书写与组织形式,门槛极低,拿来即用。其外在极简,却又不失饱满的内在,体积轻盈,组件丰盈,从核心代码到 API 的每一处细节都经过精心雕琢,非常适合界面的快速开发。layui 首个版本发布于2016年金秋,她区别于那些基于 MVVM 底层的 UI 框架,却并非逆道而行,而是信奉返璞归真之道。准确地说,她更多是为服务端程序员量身定做,你无需涉足各种前端工具的复杂配置,只需面对浏览器本身,让一切你所需要的元素与交互,从这里信手拈来。
这个很有研究意义,可以多思考哟
作为时间插件使用,请点击:到layDate插件使用案例
这里面有你想用的几乎全部功能,看一下我使用后的页面
这样运营同事使用起来更方便也一目了然,真的不错哟
正事说完了,在这里宣传一下朋友的店铺:一个新开的汉服的店铺,满足小时候披床单的愿望,男女都有哟。。。
店铺名称:汉衿凤韵,点击进店铺,欢迎选购哟,说明了解来源可以优惠!!!
最近又用到了这个时间控件,所以来补充些东西
一、自我使用代码案例
<script type="text/javascript" src="/assets/laydate/laydate.js"></script>
<input name="downTime" placeholder="请点击这里选择日期范围" value="" autocomplete="off" type="text" id="downTime" style="height: 30px;line-height: 30px;font-size: 14px;">
<input type="button" class=" down_resume" value="下载简历" onclick="downResume('time')"/>
以上代码为html中代码块,主要是用来给用户展示的;
另外,需要用js代码段执行一个laydate实例
<script>
//日期范围,指定绑定的DOM元素
laydate.render({
elem: '#downTime'
, range: true
,trigger: 'click'
,show: false
});
//检索时间
function downResume(type) {
var down_time = $('#downTime').val();
window.location.href = '/hr/position/export-resume?down_time=' + down_time + '&type=' + type;
}
</script>
以上,就是整个laydate的使用的过程,简单易上手
二、使用参数配置解释
laydate.render({
elem: '#test' //或 elem: document.getElementById('test')、elem: lay('#test') 等(类型:String/DOM,默认值:无必填项,用于绑定执行日期渲染的元素,值一般为选择器,或DOM对象)
,type: 'year'//year-只提供年列表选择||month-只提供年、月选择||date-可选择:年、月、日。type默认值,一般可不填||time-只提供时、分、秒选择||datetime-可选择:年、月、日、时、分、秒
,range: true //或 range: '~' 来自定义分割字符
,format: 'yyyy年MM月dd日' //可任意组合 yyyy年MM月dd日 HH时mm分ss秒===2017年08月18日 20时08分08秒,'yyyy/mm/dd'
,value: '2018-08-18' //必须遵循format参数设定的格式String,默认值:new Date()
,min: '2017-1-1'//min/max - 最小/大范围内的日期时间值 类型:string,默认值:min: '1900-1-1'、max: '2099-12-31'
,max: '2017-12-31'
,trigger: 'click' // 自定义弹出控件的事件(类型:String,默认值:focus,如果绑定的元素非输入框,则默认事件为:click)-采用click弹出
,show: true //默认显示-类型:Boolean,默认值:false;;;;如果设置: true,则控件默认显示在绑定元素的区域。通常用于外部事件调用控件
,position: 'static'//类型:String,默认值:absolute (fixed,absolute,static)
,zIndex: 99999999//层叠顺序-类型:Number,默认值:66666666一般用于解决与其它元素的互相被遮掩的问题。如果 position 参数设为 static 时,该参数无效
,showBottom: false//是否显示底部栏--类型:Boolean,默认值:true如果设置 false,将不会显示控件的底部栏区域
,btns: ['clear', 'now', 'confirm']//类型:Array,默认值:['clear', 'now', 'confirm'](显示清空,今天,确认)
,lang: 'en'//语言类型:String,默认值:cn--内置了两种语言版本:cn(中文版)、en(国际版,即英文版)
,theme: 'grid'//主题-类型:String,默认值:default,theme的可选值有:default(默认简约)、molv(墨绿背景)、#颜色值(自定义颜色背景)、grid(格子主题)
,calendar: true//是否显示公历节日--类型:Boolean,默认值:false
,mark: {//标注重要日子--类型:Object,默认值:无
'0-10-14': '生日'
,'0-12-31': '跨年' //每年12月31日
,'0-0-10': '工资' //每个月10号
,'2017-8-15': '' //具体日期
,'2017-8-20': '预发' //如果为空字符,则默认显示数字+徽章
,'2017-8-21': '发布'
}
,ready: function(date){//控件在打开时触发,回调返回一个参数
console.log(date); //得到初始的日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
}
,change: function(value, date, endDate){//日期时间被切换后的回调
console.log(value); //得到日期生成的值,如:2017-08-18
console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。
}
,done: function(value, date, endDate){//控件选择完毕后的回调---点击日期、清空、现在、确定均会触发。
console.log(value); //得到日期生成的值,如:2017-08-18
console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。
}
});
三、温故而知新了
如果在使用过程中出现闪现的情况,请注意各参数配置的值