<HTML>
<HEAD>
<meta http-equiv="content-type" content="text/html; charset=gb2312"><meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<script type="text/javascript">
function show(year,month) {
var week = showWeekDate(year,month);
document.writeln("周起始时间"+week.week1.start+"-"+week.week1.end+" 工作日"+week.week1.workDays+"<br/>");
document.writeln("周起始时间"+week.week2.start+"-"+week.week2.end+" 工作日"+week.week2.workDays+"<br/>");
document.writeln("周起始时间"+week.week3.start+"-"+week.week3.end+" 工作日"+week.week3.workDays+"<br/>");
document.writeln("周起始时间"+week.week4.start+"-"+week.week4.end+" 工作日"+week.week4.workDays+"<br/>");
document.writeln("周起始时间"+week.week5.start+"-"+week.week5.end+" 工作日"+week.week5.workDays+"<br/>");
if(week.hasOwnProperty("week6"))
{
document.writeln("周起始时间"+week.week6.start+"-"+week.week6.end+" 工作日"+week.week6.workDays+"<br/>");
}
}
function showWeekDate(year,month)
{
var date = new Date();
if (year.length > 0 && month.length > 0 )
{
date = new Date(year,month-1,1);
} else {
date = new Date(date.getFullYear(),date.getMonth(),1);
}
var week = new Object;
week.week1 = new Object;
week.week2 = new Object;
week.week3 = new Object;
week.week4 = new Object;
week.week5 = new Object;
//本月第一天是周几
week.today = date.getDay();
if (week.today == 0)
{
date.setDate(date.getDate()+1);
week.today = date.getDay();
}
//本月第一周工作日
week.week1.workDays = 5-week.today+1;
if (week.week1.workDays<0) week.week1.workDays=0;
//本月第一周起始日期
week.week1.start = date.getDate()+"/"+(date.getMonth()+1);
//本月第一周结束日期
date.setDate(date.getDate()+(1+week.week1.workDays));
week.week1.end = date.getDate()+"/"+(date.getMonth()+1);
//本月第二周起始日期
date.setDate(date.getDate()+1);
week.week2.workDays = 5;
week.week2.start = date.getDate()+"/"+(date.getMonth()+1);
//本月第二周结束日期
date.setDate(date.getDate()+(1+week.week2.workDays));
week.week2.end = date.getDate()+"/"+(date.getMonth()+1);
//本月第三周起始日期
date.setDate(date.getDate()+1);
week.week3.workDays = 5;
week.week3.start = date.getDate()+"/"+(date.getMonth()+1);
//本月第三周结束日期
date.setDate(date.getDate()+(1+week.week3.workDays));
week.week3.end = date.getDate()+"/"+(date.getMonth()+1);
//本月第四周起始日期
date.setDate(date.getDate()+1);
week.week4.workDays = 5;
week.week4.start = date.getDate()+"/"+(date.getMonth()+1);
//本月第四周结束日期
date.setDate(date.getDate()+(1+week.week4.workDays));
week.week4.end = date.getDate()+"/"+(date.getMonth()+1);
date.setDate(date.getDate()+1);
week.week5.start = date.getDate()+"/"+(date.getMonth()+1);
//计算月底日期
var nextMonth = new Date(date.getFullYear(),date.getMonth()+1,1);
var monthLastDay = new Date(nextMonth-86400000);
date.setDate(date.getDate()+6);
if (date <= monthLastDay)
{
week.week5.workDays = 5;
week.week5.end = date.getDate()+"/"+(date.getMonth()+1);
if (date < monthLastDay) {
week.week6 = new Object;
date.setDate(date.getDate()+1);
week.week6.start = date.getDate()+"/"+(date.getMonth()+1);
week.week6.end = monthLastDay.getDate()+"/"+(date.getMonth()+1);
week.week6.workDays = monthLastDay.getDay();
}
} else {
week.week5.end = monthLastDay.getDate()+"/"+(monthLastDay.getMonth()+1);
week.week5.workDays = monthLastDay.getDay();
if (week.week5.workDays >5 ) week.week5.workDays = 5;
}
return week;
}
</script>
</HEAD>
<body>
Year:<input type="text" id="year" value="2011"/>
Month:<input type="text" id="month" value="8"/>
<input type="button" value="show" onclick="javascript:show(document.getElementById('year').value,document.getElementById('month').value)"/>
</body>
</html>
运行结果:
周起始时间1/8-7/8 工作日5
周起始时间8/8-14/8 工作日5
周起始时间15/8-21/8 工作日5
周起始时间22/8-28/8 工作日5
周起始时间29/8-31/8 工作日3
分享到:
相关推荐
这段代码将创建两个日期选择器,分别用于选择开始日期和结束日期,开始日期不能早于今天,而结束日期不能超过一个月后且至少要晚于开始日期一天。 6. **自定义事件和回调函数**:jQuery datepicker还支持自定义...
在JavaScript中,获取一段时间内的日期是一项常见的任务,尤其在数据处理和日历应用中非常有用。这个主题涉及到几个关键的概念,包括日期对象的创建、日期的比较以及如何遍历一个日期范围来提取特定类型的日期。以下...
在JavaScript编程中,有时我们需要获取特定年份和月份内的所有日期。这在处理日历、数据分析或者时间相关的应用中非常常见。"根据年月获取这个月份的所有日期"这个任务可以通过编写一个函数来实现,就像提供的代码...
在Web开发中,用户界面经常需要提供日期和时间选择功能,以便用户能够方便地输入或选择日期和时间。本文将详细讲解"web端日期选择器、月份选择器、时间选择器以及时间范围选择器"这四个核心知识点,并结合提供的文件...
而为了将时间限制从开始时间上移除,可以通过设置结束时间的开始日期为1970年1月1日(一个非常早的日期),或者设置一个非常晚的日期如2286年作为结束时间的开始日期,这样就可以将时间约束移除。 在清除时间的实现...
2. **JavaScript和jQuery基础**:这个插件基于JavaScript(可能包括jQuery库)编写,利用JavaScript强大的DOM操作和事件处理能力,实现了动态的日期和时间选择效果。jQuery简化了跨浏览器的DOM操作,使得代码更加...
这个`Date`对象提供了丰富的API,例如`getFullYear()`获取四位数的年份,`getMonth()`获取月份(注意,JavaScript中的月份是从0开始的),`getDate()`获取月份中的日期,`getHours()`、`getMinutes()`和`getSeconds...
通过实例化 `Date` 对象,我们可以获取当前日期和时间,也可以进行日期的计算和格式化。例如: ```javascript var now = new Date(); var year = now.getFullYear(); var month = now.getMonth() + 1; // 注意月份...
标签中的知识点:涉及到Js在获取日期时间方面相关的几个关键功能和方法,包括获取年份、月份、日、星期、时间等,以及日期时间的格式化方法。 详细知识点介绍: 1. 获取当前日期和时间: - JavaScript中的Date...
日期控件是UI中的常见元素,常用于各种预订系统,如酒店预订、机票预订等,让用户能够方便地选择开始和结束日期。在这个场景中,我们关注的是一个特别设计的H5日期控件,它特别针对酒店预订流程,允许用户选择两个...
这个控件应该能够以符合日本用户习惯的方式显示日期,并且在用户选择开始日期和结束日期时,确保开始日期始终小于结束日期,以防止逻辑错误。 首先,我们需要了解JSP(JavaServer Pages)是Java平台上的一种动态...
2. **获取日期和时间**:`Date`对象提供了多种方法来获取日期和时间的各个部分,如`getDate()`返回月份中的日期,`getMonth()`返回月份(注意,月份是从0开始的),`getFullYear()`返回四位数的年份,`getHours()`、...
这里需要注意的是,由于JavaScript中的月份是从0开始计数的,所以在创建`Date`对象时,需要将月份减1。 #### 3. 比较日期大小 接下来,需要比较`startTime`和`endTime`的大小。如果开始时间晚于结束时间,则会弹出...
在JavaScript编程语言中,`Date`对象是处理日期和时间的核心工具。`new Date()`构造函数用于创建一个表示当前日期和时间的新`Date`对象。然而,在这个特定的场景下,我们关注的是如何使用`Date`对象来获取指定日期...
计算工作日差值时,我们需要从起始日期开始,逐天向前或向后遍历,直到达到结束日期,但要跳过非工作日。 在Excel中,有一个内置的WORKDAY函数,可以方便地完成这项任务。WORKDAY函数接受三个参数:起始日期、工作...
在这个JavaScript示例中,我们为开始和结束日期的`datepicker`添加了`onSelect`事件处理器,确保结束日期始终大于或等于开始日期。 在实际应用中,我们还需要考虑用户界面的友好性和异常处理,比如当用户尝试输入...
在开发Web应用时,JavaScript(JS)和SQL Server之间的日期兼容性问题经常出现,因为两者处理日期的方式有所不同。本文将详细探讨如何在JS与SQL Server之间有效地管理和转换日期,以确保数据的一致性和正确性。 ...
此函数将字符串形式的日期和时间转换为JavaScript的时间戳。 #### 3.3 计算日期差(周数) 此外,文件中还包含了一个`dateDiffWeek`函数,用于计算两个日期之间的周数差异: ```javascript function dateDiffWeek...
"网页日期选择js文件" 提供的就是一个JavaScript实现的日期选择功能,使得开发者无需编写复杂的代码就能在网页上添加这种交互式元素。 JavaScript是一种在客户端运行的脚本语言,它对于网页动态交互起着至关重要的...
JavaScript(通常简称为JS)是一种轻量级的解释型编程语言,主要用于网页和网络应用的开发。在网页中,JS可以极大地增强用户交互性,其中日期控件是常见的一种功能,用于帮助用户方便地选择日期,常用于日历插件、...