时间联动 动态根据参照时间进行累加

/* 时间联动
 */
 
 $(function(){
 	$('#applyNum').bind('keyup',function(){//键盘键抬起触发
 		 var sourse = '${apply.sourceTimeLimit }';
 		 var appUnit = $("#applyUnit").val();
 		 var appNum = parseInt($('#applyNum').val());
 		if(appNum>0 && sourse != ''){
 			var dateone = dateAdd(sourse,appUnit,appNum);
 			var dateOne = dateone.Format("yyyy-MM-dd hh:mm:ss");
 			$("#targetTimeLimit").val(dateOne);
 		}
 	});
 	$('#applyUnit').bind('change',function(){//控件值改变时触发
 		 var sourse = '${apply.sourceTimeLimit }';//获取参照时间
 		 var appUnit = $("#applyUnit").val();//获取录入的数字
 		 var appNum = parseInt($('#applyNum').val());//获取改变的时间单位
 		if(appNum>0  && sourse != ''){//如果不为空
 			var dateone = dateAdd(sourse,appUnit,appNum);
 			var dateOne = dateone.Format("yyyy-MM-dd hh:mm:ss");
 			$("#targetTimeLimit").val(dateOne);//给算出的时间复制给属性显示
 		}
 	});
 })
/*
 * 日期计算
 */
 function dateAdd(date,strInterval, Number) {  //参数分别为日期对象,增加的类型,增加的数量 
                    var dtTmp = new Date(date);  
                    switch (strInterval) {   
                        case 'second':
                            return new Date(dtTmp.getFullYear(), dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds()+Number);  
                        case 'minute':
                            return new Date(dtTmp.getFullYear(), dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes()+Number, dtTmp.getSeconds());  
                        case 'hour':
                            return new Date(dtTmp.getFullYear(), dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours()+Number, dtTmp.getMinutes(), dtTmp.getSeconds()); 
                        case 'day':                           
                            return new Date(dtTmp.getFullYear(), dtTmp.getMonth(), dtTmp.getDate()+Number, dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds()); 
                        case 'week':                           
                            return new Date(dtTmp.getFullYear(), dtTmp.getMonth(), dtTmp.getDate()+(Number*7), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
                        case 'month':
                            return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + Number, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());  
                    }  
}
/*
 * 时间格式转换
 */
 Date.prototype.Format = function(fmt) {
		var o = {
			"M+" : this.getMonth() + 1, // 月份
			"d+" : this.getDate(), // 日
			"h+" : this.getHours(), // 小时
			"m+" : this.getMinutes(), // 分
			"s+" : this.getSeconds(), // 秒
			"q+" : Math.floor((this.getMonth() + 3) / 3), // 季度
			"S" : this.getMilliseconds(), // 毫秒
			"0+" : "0"
		};
		if(o == undefined) return fmt;
		if (/(y+)/.test(fmt)){
			fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
		}
		for (var k in o){
			if (new RegExp("(" + k + ")").test(fmt)){
				fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
			}
		}
		return fmt;
	}

 





  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值