123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 |
- layui.define(['layer'],function(exports){
- //提示:模块也可以依赖其它模块,如:layui.define('layer', callback);
- let laydate = layui.laydate;
- const opts={
- "target":'laydateplus',
- "callback": null
- };
- var laydatePlus = function(options){
- this.settings = $.extend({}, opts, options);
- let me = this;
- $('#'+this.settings.target).click(function(){
- me.init();
- });
- };
- laydatePlus.prototype = {
- init: function () {
- var me = this;
-
- let shortcuts = [
- {
- text: "昨天",
- value: function(){
- var value = [];
- var date1 = new Date();
- date1.setDate(date1.getDate() - 1);
- date1.setHours(0, 0, 0, 0);
- value.push(date1);
- var date2 = new Date();
- date2.setDate(date2.getDate() - 1);
- date2.setHours(23, 59, 59, 999);
- value.push(new Date(date2));
- return value;
- }()
- },
- {
- text: "今天",
- value: function(){
- var value = [];
- var date1 = new Date();
- date1.setDate(date1.getDate());
- date1.setHours(0, 0, 0, 0);
- value.push(date1);
- var date2 = new Date();
- date2.setDate(date2.getDate());
- date2.setHours(23, 59, 59, 999);
- value.push(new Date(date2));
- return value;
- }()
- },
- {
- text: "最近7天",
- value: function(){
- var value = [];
- var date1 = new Date();
- date1.setDate(date1.getDate() - 7);
- date1.setHours(0, 0, 0, 0);
- value.push(date1);
- var date2 = new Date();
- date2.setHours(23, 59, 59, 999);
- value.push(new Date(date2));
- return value;
- }()
- },
- {
- text: "最近30天",
- value: function(){
- var value = [];
- var date1 = new Date();
- date1.setDate(date1.getDate() - 30);
- date1.setHours(0, 0, 0, 0);
- value.push(date1);
- var date2 = new Date();
- date2.setHours(23, 59, 59, 999);
- value.push(new Date(date2));
- return value;
- }()
- },
- {
- text: "本周",
- value: function(){
- var value = [];
- var today = new Date();
- var date1 = new Date(today.setDate(today.getDate() - today.getDay() + (today.getDay() === 0 ? -6 : 1)));
- date1.setHours(0, 0, 0, 0);
- value.push(date1);
- var date2 = new Date(today.setDate(today.getDate() + 6));
- date2.setHours(23, 59, 59, 999);
- value.push(new Date(date2));
- return value;
- }()
- },
- {
- text: "上周",
- value: function(){
- var value = [];
- var today = new Date();
- var lastWeek = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 7);
- var date1 = new Date(lastWeek.getFullYear(), lastWeek.getMonth(), lastWeek.getDate() - lastWeek.getDay() + 1);
- date1.setHours(0, 0, 0, 0);
- value.push(date1);
- var date2 = new Date(lastWeek.getFullYear(), lastWeek.getMonth(), lastWeek.getDate() - lastWeek.getDay() + 7);
- date2.setHours(23, 59, 59, 999);
- value.push(new Date(date2));
- return value;
- }()
- },
- {
- text: "上个月",
- value: function(){
- var value = [];
- var date1 = new Date();
- date1.setMonth(date1.getMonth() - 1);
- date1.setDate(1);
- date1.setHours(0, 0, 0, 0);
- value.push(date1);
- var date2 = new Date();
- date2.setDate(1);
- date2.setHours(0, 0, 0, 0);
- date2 = date2.getTime() - 1;
- value.push(new Date(date2));
- return value;
- }()
- },
- {
- text: "这个月",
- value: function(){
- var value = [];
- var date1 = new Date();
- date1.setDate(1);
- date1.setHours(0, 0, 0, 0);
- value.push(date1);
- var date2 = new Date();
- date2.setMonth(date2.getMonth() + 1);
- date2.setDate(1);
- date2.setHours(0, 0, 0, 0);
- date2 = date2.getTime() - 1;
- value.push(new Date(date2));
- return value;
- }()
- },
- {
- text: "下个月",
- value: function(){
- var value = [];
- var date1 = new Date();
- date1.setMonth(date1.getMonth() + 1);
- date1.setDate(1);
- date1.setHours(0, 0, 0, 0);
- value.push(date1);
- var date2 = new Date();
- date2.setMonth(date2.getMonth() + 2);
- date2.setDate(1);
- date2.setHours(0, 0, 0, 0);
- date2 = date2.getTime() - 1;
- value.push(new Date(date2));
- return value;
- }()
- }
- ];
- // 日期时间范围
- laydate.render({
- elem: '#'+this.settings.target,
- type: 'datetime',
- range: '~',
- trigger: 'none',
- rangeLinked:true,
- shortcuts: shortcuts,
- show:true
- });
- }
- }
- //输出接口
- exports('laydatePlus', laydatePlus);
- });
|