$(document).ready(function () {
//获取单元格值改变事件不需要获取焦点
//备注:可以换成 $(".checkcountlen").bind("blur", function () {
$("#butok").bind("click", function () {
//判断开始时间和结束时间
var strstarttime = $("#fstarttime").val();
var endtime = $("#fendtime").val();
if (strstarttime == "" || endtime == "") {
$("#difday").val(0);
}
else {
var startnum = parseint(strstarttime.replace(/-/g, ''), 10);
var endnum = parseint(endtime.replace(/-/g, ''), 10);
if (startnum > endnum) {
alert("结束时间不能在开始时间之前!");
}
else {
$("#difday").val(datediff(strstarttime, endtime)); //调用/计算两个日期天数差的函数,通用
}
}
});
//根据填写相差天数获取结束日期
$("#butok1").bind("click", function () {
//判断开始时间和结束时间
var strstarttime = $("#fstarttime").val();
var inputnum = $("#inputnum").val(); //获取相差天数
if (strstarttime != "") {
}
$("#fendtime").val(addbytransdate(strstarttime, inputnum)); //根据指定的一个日期和相差的天数,获取另外一个日期
});
});
////////////////////////////////////////////////////////////////////////////////////////////
//计算两个日期天数差的函数,通用
////////////////////////////////////////////////////////////////////////////////////////////
function datediff(sdate1, sdate2) { //sdate1和sdate2是yyyy-mm-dd格式
var adate, odate1, odate2, idays;
adate = sdate1.split("-");
odate1 = new date(adate[1] + '-' + adate[2] + '-' + adate[0]); //转换为yyyy-mm-dd格式
adate = sdate2.split("-");
odate2 = new date(adate[1] + '-' + adate[2] + '-' + adate[0]);
idays = parseint(math.abs(odate1 - odate2) / 1000 / 60 / 60 / 24); //把相差的毫秒数转换为天数
return idays; //返回相差天数
}
////////////////////////////////////////////////////////////////////////////////////////////
//根据指定的一个日期和相差的天数,获取另外一个日期
//dateparameter为指定已经存在的日期yyyy-mm-dd num为相差天数为整型
////////////////////////////////////////////////////////////////////////////////////////////
function addbytransdate(dateparameter, num) {
var translatedate = "", datestring = "", monthstring = "", daystring = "";
translatedate = dateparameter.replace("-", "/").replace("-", "/"); ;
var newdate = new date(translatedate);
newdate = newdate.valueof();
newdate = newdate + num * 24 * 60 * 60 * 1000; //备注 如果是往前计算日期则为减号 否则为加号
newdate = new date(newdate);
//如果月份长度少于2,则前加 0 补位
if ((newdate.getmonth() + 1).tostring().length == 1) {
monthstring = 0 + "" + (newdate.getmonth() + 1).tostring();
} else {
monthstring = (newdate.getmonth() + 1).tostring();
}
//如果天数长度少于2,则前加 0 补位
if (newdate.getdate().tostring().length == 1) {
daystring = 0 + "" + newdate.getdate().tostring();
} else {
daystring = newdate.getdate().tostring();
}
datestring = newdate.getfullyear() + "-" + monthstring + "-" + daystring;
return datestring;
}