1.计算日期时间差
Function:计算日期差
Description:传入格式为yyyy-MM-dd HH:mm:ss 格式日期计算时差,该方法未进行判空请自行判空
Return:时间差 小时
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| function getTimeDiff(startDate, EndDate) { try { var format_startDate = new Date(startDate.replace(/-/g, "/")); var format_EndDate = new Date(EndDate.replace(/-/g, "/")); var days = format_EndDate.getTime() - format_startDate.getTime(); } catch (e) { return 0; } return (days / 1000 / 60 / 60).toFixed(1); } ```
#### 2.初始化Bootstrap日期 > Function:传入需要初始化的组件ID,初始化所有日期控件 Description:在页面加载时初始化所有的日期控件
>注:需引入bootstrap-datetimepicker
```javaScript var initDatetimepicker = function () { for (var i = 0; i < arguments.length; i++) { $("#" + arguments[i]).datetimepicker({ format: 'yyyy-mm-dd', autoClose: true, language: 'zh-CN', todayHighlight: true, startView: 2, minView: 2, maxView: 4 }); } };
|
###3.判断起始日期有效性
Function 时间段验证,开始时间不能大于结束时间
Description 按顺序传入需要初始化的日期组件ID.开始-结束,验证日期有效性
TODO: 需改进为无序,只传入ID 自动判断日期有效性
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| var timeVerify = function (start, end) { start = $("#" + start); end = $("#" + end);
start.on('changeDate', function (e) { if (end.val() != null && end.val() !== "" && start.val() > end.val()) { pfs.comm.showDialog("开始时间必须小于结束时间"); start.val(""); } });
end.on('changeDate', function (e) { if (start.val() != null && start.val() !== "" && end.val() < start.val()) { pfs.comm.showDialog("结束时间必须大于开始时间"); end.val(""); } }); };
|