title | date | categories | tags | ||
---|---|---|---|---|---|
WdatePicker(My97DatePicker) |
2017-06-09 02:52:40 -0700 |
前端 |
|
<Excerpt in index | 首页摘要> My97 DatePicker 也称作WdatePicker,一款开源的,功能强大的日期控件。 官网:http://www.my97.net/dp/index.asp
<The rest of contents | 余下全文>
My97 DatePicker 也称作WdatePicker,一款开源的,功能强大的日期控件。 官网:http://www.my97.net/dp/index.asp
下载地址:http://www.my97.net/dp/down.asp
在官网下载的文件,目录结构不要动,(具体的规则看下载包里面的文件提示)。只需要在你的项目里面引入:
<script src="My97DatePicker/WdatePicker.js"></script>
完整的一个基础示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="My97DatePicker/WdatePicker.js"></script>
<title>基本使用</title>
</head>
<body>
<input class="Wdate" type="text" onClick="WdatePicker()">
</body>
</html>
<input class="Wdate" type="text" onClick="WdatePicker({maxDate:'%y-%M-#{%d}'})">
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.js"></script>
<script src="My97DatePicker/WdatePicker.js"></script>
<title></title>
</head>
<body>
日期范围:
<input type="text" id="LstartTime" class="Wdate" style="width:120px;">
-
<input type="text" id="LendTime" class="Wdate" style="width:120px;">
<button name="" id="recentWeek" type="submit">最近一周</button>
</body>
<script type="text/javascript">
$(function () {
//获取当前的日期和时间
var ndate = new Date();
$('#recentWeek').click(function () {
//七天以前
$('#LstartTime').val(addDate(ndate, -7));
//一天以前
$('#LendTime').val(addDate(ndate, -1));
});
});
function addDate(datetimes, days) {
//返回从 1970 年 1 月 1 日至今的毫秒数
var datetime = new Date(datetimes);
//格式化时间戳
datetime = datetime.valueOf();
//将时间修改为days天以后
datetime = datetime + days * 24 * 60 * 60 * 1000;
//将时间戳在设置回正确时间格式
datetime = new Date(datetime);
//返回年月日
return datetime.getFullYear() + '-' + (datetime.getMonth() + 1) + '-' + datetime.getDate();
}
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.js"></script>
<script src="My97DatePicker/WdatePicker.js"></script>
<title></title>
</head>
<body>
日期范围:
<input type="text" id="recentMonthStartTime" class="Wdate" style="width:120px;">
-
<input type="text" id="recentMonthEndTime" class="Wdate" style="width:120px;">
<button name="" id="recentMonth" type="submit">最近一月</button>
<script type="text/javascript">
//获取当前时间
var ndate = new Date();
$('#recentMonth').click(function () {
$('#recentMonthStartTime').val(addMon(-1));
$('#recentMonthEndTime').val(addDate(ndate, -1));
});
function addDate(datetimes, days) {
var datetime = new Date(datetimes);
datetime = datetime.valueOf();
datetime = datetime + days * 24 * 60 * 60 * 1000;
datetime = new Date(datetime);
return datetime.getFullYear() + '-' + (datetime.getMonth() + 1) + '-' + datetime.getDate();
}
function addMon(mon) {
//获取当前时间
var datetime = new Date();
//分两步:1.将获取到的当前时间里面的月份+上传进来的参数mon,然后重新设置原来的时间月份为最新的和这个
datetime.setMonth(datetime.getMonth() + mon);
return datetime.getFullYear() + '-' + (datetime.getMonth() + 1) + '-' + datetime.getDate();
}
</script>
</html>
查看:http://www.my97.net/dp/demo/index.htm (脚本自定义限制) 具体的效果
具体代码如下
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.js"></script>
<script src="My97DatePicker/WdatePicker.js"></script>
<title></title>
</head>
<body>
<h3>第一个输入框的时间范围:最小~第二个输入框的时间往前推(-)30天;最大~第二个输入框的时间</h3>
<h3>第二个输入框的时间范围:最小~第一个输入框的时间;最大~第一个输入框的时间往后推(+)30天</h3>
日期范围:
<input type="text" onfocus="startTimefocus('LendTime')" id="LstartTime" class="Wdate" style="width:120px;">
-
<input type="text" onfocus="endTimefocus('LstartTime')" id="LendTime" class="Wdate" style="width:120px;">
<script type="text/javascript">
function startTimefocus(endTime) {
return WdatePicker({
skin: 'whyGreen',
//参数endTime是某个input的ID值,此时为LendTime的,也就是第二个input输入框的
//最小输入时间为ID=LendTime的输入框时间往前减30天
minDate: '#F{$dp.$D(\'' + endTime + '\',{d:-30});}',
//最大输入时间为ID=LendTime的输入时间
maxDate: '#F{$dp.$D(\'' + endTime + '\')||\'%y-%M-%d\'}',
doubleCalendar: true,
dateFmt: 'yyyy-MM-dd'
});
}
function endTimefocus(startTime) {
return WdatePicker({
skin: 'whyGreen',
//参数startTime是某个input的ID值,此时为LstartTime的,也就是第一个input输入框的
//最小输入时间为ID=LstartTime的输入框输入的时间
minDate: '#F{$dp.$D(\'' + startTime + '\')}',
//最大输入时间为ID=LstartTime的输入框时间往后加30天
maxDate: '#F{$dp.$D(\'' + startTime + '\',{d:30})||\'%y-%M-%d\'}',
doubleCalendar: true,
dateFmt: 'yyyy-MM-dd'
});
}
</script>
</html>