jyyhq/witDisplay/page/core/dome.html

100 lines
3.6 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="https://cdn.staticfile.org/layui/2.5.7/css/layui.min.css">
<script src="https://cdn.staticfile.org/jquery/3.6.0/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/layui/2.5.7/layui.all.min.js"></script>
</head>
<body>
<div class="layui-form-item">
<label class="layui-form-label">起始时间</label>
<div class="layui-input-inline">
<input type="text" id="start-time" lay-verify="date" placeholder="请选择起始时间" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">结束时间</label>
<div class="layui-input-inline">
<input type="text" id="end-time" lay-verify="date" placeholder="请选择结束时间" autocomplete="off" class="layui-input">
</div>
</div>
<script>
// 使用Layui的日期时间范围选择器组件
layui.use('laydate', function(){
var laydate = layui.laydate;
// 初始化起始时间选择器
laydate.render({
elem: '#start-time',
type: 'datetime',
format: 'yyyy-MM-dd HH:mm:ss',
min: dayOffset(-11) + ' 00:00:00', // 设置最小可选日期
max: getCurrentDateTime(), // 设置最大可选日期
theme: 'grid',
done: function(value, date){
// 获取起始时间选择器的值
var startTime = new Date(value).getTime();
var endTime = new Date($('#end-time').val()).getTime();
// // 如果结束时间早于起始时间,则自动修正为与起始时间相同
// if (endTime < startTime){
// $('#end-time').val(value);
// }
}
});
// 初始化结束时间选择器
laydate.render({
elem: '#end-time',
type: 'datetime',
format: 'yyyy-MM-dd HH:mm:ss',
min: dayOffset(-11) + ' 00:00:00', // 设置最小可选日期
max: getCurrentDateTime(), // 设置最大可选日期
theme: 'grid',
done: function(value, date){
// 获取结束时间选择器的值
var startTime = new Date($('#start-time').val()).getTime();
var endTime = new Date(value).getTime();
// 如果结束时间早于起始时间,则自动修正为与起始时间相同
if (endTime < startTime){
$('#end-time').val($('#start-time').val());
}
}
});
});
// 获取当前日期时间字符串
function getCurrentDateTime(){
var now = new Date();
var year = now.getFullYear();
var month = padZero(now.getMonth() + 1);
var day = padZero(now.getDate());
var hours = padZero(now.getHours());
var minutes = padZero(now.getMinutes());
var seconds = padZero(now.getSeconds());
return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds;
}
// 获取相对于当前日期的偏移量的日期字符串
function dayOffset(offset){
var now = new Date();
now.setDate(now.getDate() + offset);
var year = now.getFullYear();
var month = padZero(now.getMonth() + 1);
var day = padZero(now.getDate());
return year + '-' + month + '-' + day;
}
// 数字补零函数
function padZero(num){
return num < 10 ? '0' + num : num;
}
</script>
</body>
</html>