您的位置:首页 > Web前端 > JQuery

JQuery EasyUI 扩展方法 日期控件 设置时间段函数

2018-01-08 17:02 288 查看
/** Jquery扩展方法--by hgx 2018年1月8日--
* 设置时间段函数,开始时间(1号)与结束时间(当前日期)
* 传入参数:--spaceMonth:查询间隔月,1为间隔查询一个月;
*           --addDay:设置结束时间,0为当前日期;
*           --isTime:是否返回日期中带有时间字符串;
* 返回值:arr[0] 开始时间;arr[1] 结束时间
* 调用方法:var arr = $("#TimeStart,#TimeEnd").GetDateStartEndStr(1, -1, true);
* 调用方法:var arr = $("#TimeStart,#TimeEnd").SetDateTimeStartEndStr(1, 0);
**/
(function ($) {
//easyui-datebox
$.fn.SetDateStartEndStr = function (spaceMonth, addDay, isTime) {
var arr = Array(2);
var obj = $(this);
//$.parser.parse('#' + obj[0].id);
//$.parser.parse('#' + obj[1].id);
var dd = new Date();
dd.setDate(dd.getDate() + addDay);
var y = dd.getFullYear();
var m = dd.getMonth() + 1;
m = (m < 10 ? '0' : '') + m;
var d = dd.getDate();
d = (d < 10 ? '0' : '') + d;
var enddate = y + "-" + m + "-" + d;
arr[1] = enddate;
if (isTime) {
arr[1] = enddate + " 23:59:59";
}
$(obj[1]).datebox("setValue", enddate);
$(obj[1]).datebox({
onChange: function (value) {
arr[1] = value;
if (isTime) {
arr[1] = value + " 23:59:59";
}
if (value > enddate) {
arr[1] = enddate;
if (isTime) {
arr[1] = enddate + " 23:59:59";
}
var obj = $(this);
setTimeout(function () {
obj.datebox("setValue", enddate);
}, 100);
}
return arr;
}
});
dd.setMonth(dd.getMonth() + 1 + (spaceMonth * -1));
y = dd.getFullYear();
m = dd.getMonth() + 1;
m = (m < 10 ? '0' : '') + m;
var startdate = y + "-" + m + "-01";
arr[0] = startdate;
if (isTime) {
arr[0] = startdate + " 00:00:00";
}
$(obj[0]).datebox("setValue", startdate);
$(obj[0]).datebox({
onChange: function (value) {
arr[0] = value;
if (isTime) {
arr[0] = value + " 00:00:00";
}
return arr;
}
});
return arr;
}
//easyui-datetimebox
$.fn.SetDateTimeStartEndStr = function (spaceMonth, addDay) {
var arr = Array(2);
var obj = $(this);
//$.parser.parse('#' + obj[0].id);
//$.parser.parse('#' + obj[1].id);
var dd = new Date();
dd.setDate(dd.getDate() + addDay);
var y = dd.getFullYear();
var m = dd.getMonth() + 1;
m = (m < 10 ? '0' : '') + m;
var d = dd.getDate();
d = (d < 10 ? '0' : '') + d;
var enddate = y + "-" + m + "-" + d + " 23:59:59";
arr[1] = enddate;
$(obj[1]).datebox("setValue", enddate);

$(obj[1]).datebox({
onChange: function (value) {
arr[1] = value;
if (value > enddate) {
arr[1] = enddate;
var obj = $(this);
setTimeout(function () {
obj.datebox("setValue", enddate);
}, 100);
}
return arr;
}
});
dd.setMonth(dd.getMonth() + 1 + (spaceMonth * -1));
y = dd.getFullYear();
m = dd.getMonth() + 1;
m = (m < 10 ? '0' : '') + m;
var startdate = y + "-" + m + "-01" + " 00:00:00";
arr[0] = startdate;
$(obj[0]).datebox("setValue", startdate);
$(obj[0]).datebox({
onChange: function (value) {
arr[0] = value;
return arr;
}
});
return arr;
}
})(jQuery)


调用实例:

    <tr>
<td style="text-align:right">时间范围</td>
<td>
<input id="MTimeStart" class="easyui-datetimebox" value="" style="width:135px" />
<input id="MTimeEnd"  class="easyui-datetimebox" value="" style="width:135px" />
</td>
</tr>


<script type="text/javascript">
var MTime;
$(function () {
MTime = $("#MTimeStart,#MTimeEnd").SetDateTimeStartEndStr(-1, 0);
console.log(MTime);
});
</script>


获取开始日期: MTime[0]

获取结束日期:MTime[1]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐