根据星期自动计算离现今最近的日期

	//根据星期数自动计算最近日期
	function calDateByWeek(){
		var startweek=$("#startweek").val();
		var startWeekHour=$("#startWeekHour").val();
		var startWeekMin=$("#startWeekMin").val();
		
		var endweek=$("#endweek").val();
		var endWeekHour=$("#endWeekHour").val();
		var endWeekMin=$("#endWeekMin").val();
		
		var startDate = new Date();
		startDate.setHours(startWeekHour);
		startDate.setMinutes(startWeekMin);
		
		var endDate = new Date();
		endDate.setHours(endWeekHour);
		endDate.setMinutes(endWeekMin);
		
		if(startweek!=''&&endweek!=''){
			if(startweek<endweek){
				if(endDate.getDay()>endweek){//例:周一到周三
					startDate.setDate(startDate.getDate()-(startDate.getDay()-startweek));
					endDate.setDate(endDate.getDate()-(endDate.getDay()-endweek));
				}else if(endDate.getDay()<=endweek){
					startDate.setDate(startDate.getDate()-(startDate.getDay()-startweek)-7);
					endDate.setDate(endDate.getDate()-(endDate.getDay()-endweek)-7);
				}
			}else if(startweek>=endweek){//例:周四到周一或周一到周一
				if(endDate.getDay()>endweek){
					startDate.setDate(startDate.getDate()-(startDate.getDay()-startweek)-7);
					endDate.setDate(endDate.getDate()-(endDate.getDay()-endweek));
				}else if(endDate.getDay()<=endweek){
					startDate.setDate(startDate.getDate()-14+(startweek-startDate.getDay()));
					endDate.setDate(endDate.getDate()-7+(endweek-endDate.getDay()));
				}
			}
			
			//alert(startDate.toLocaleString()+" "+endDate.toLocaleString());
			//alert(startDate.getTime()+" "+endDate.getTime());
			$("#starttime").attr("value",startDate.getTime());
			$("#endtime").attr("value",endDate.getTime());
		}
	}


不废话,直接上代码

<select id="startweek" name="startweek" οnchange="calDateByWeek();">
	<option value="">
		请选择
	</option>
	<option value="1">
		周一
	</option>
	<option value="2">
		周二
	</option>
	<option value="3">
		周三
	</option>
	<option value="4">
		周四
	</option>
	<option value="5">
		周五
	</option>
	<option value="6">
		周六
	</option>
	<option value="7">
		周日
	</option>
</select>
<select id="startWeekHour" name="startWeekHour"
	οnchange="calDateByWeek();">
	<c:forEach var="number" begin="0" end="23" step="1">
		<option value="${number}">
			${number}时
		</option>
	</c:forEach>
</select>
<select id="startWeekMin" name="startWeekMin"
	οnchange="calDateByWeek();">
	<c:forEach var="number" begin="0" end="59" step="1">
		<option value="${number}">
			${number}分
		</option>
	</c:forEach>
</select>


 

<select id="endweek" name="endweek" οnchange="calDateByWeek();">
	<option value="">
		请选择
	</option>
	<option value="1">
		周一
	</option>
	<option value="2">
		周二
	</option>
	<option value="3">
		周三
	</option>
	<option value="4">
		周四
	</option>
	<option value="5">
		周五
	</option>
	<option value="6">
		周六
	</option>
	<option value="7">
		周日
	</option>
</select>
<select id="endWeekHour" name="endWeekHour" οnchange="calDateByWeek();">
	<c:forEach var="number" begin="0" end="23" step="1">
		<option value="${number}">
			${number}时
		</option>
	</c:forEach>
</select>
<select id="endWeekMin" name="endWeekMin" οnchange="calDateByWeek();">
	<c:forEach var="number" begin="0" end="59" step="1">
		<option value="${number}">
			${number}分
		</option>
	</c:forEach>
</select>


大笑

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值