JS里 面的new Date("xxxx/xx/xx")这个日期的构造方法有一个妙处,当你传入的是"xxxx/xx/0"(0号)的话,得到的日期是"xx"月的前一个月的最后一天("xx"月的最大取值是69,题外话),如果传入"1999/13/0",会得到"1998/12/31"。而且最大的好处是当你传入"xxxx/3/0",会得到xxxx年2月的最后一天,它会自动判断当年是否是闰年来返回28或29,不用自己判断,太方便了!!所以,我们想得到选择年选择月有多少天的话,只需要
下面是使用JS编写的获取某年某月有多少天的getDaysInMonth(year, month)方法:
function getDaysInMonth(year,month){
month = parseInt(month,10)+1;
var temp = new Date(year+"/"+month+"/0");
return temp.getDate();
}
===============================================================================
var temp=new Date("选择年/选择月+1/0");
alert(temp.getDate());
就可以了,是不是很方便?校验的话,也可以用这个方法。
下面是使用JS编写的获取某年某月有多少天的getDaysInMonth(year, month)方法:
function getDaysInMonth(year,month){
month = parseInt(month,10)+1;
var temp = new Date(year+"/"+month+"/0");
return temp.getDate();
}
===============================================================================
<%
String[] weekdays={"","日","一","二","三","四","五","六"};
String[] days=new String[42];
for(int i=0;i<42;i++)
days[i]="";
Calendar cal=Calendar.getInstance();
cal.add(Calendar.MONTH, 1);// 减一个月
// GregorianCalendar currentDay = new GregorianCalendar();
int year= cal.get(Calendar.YEAR);
int month=cal.get(Calendar.MONTH);
int today=cal.get(Calendar.DAY_OF_MONTH);
int weekday=cal.get(Calendar.DAY_OF_WEEK);
String now=year+"年"+(month+1)+"月"+today+"日"+" 星期"+weekdays[weekday];
Calendar thisMonth=Calendar.getInstance();
thisMonth.set(Calendar.MONTH, month );
thisMonth.set(Calendar.YEAR, year );
thisMonth.setFirstDayOfWeek(Calendar.SUNDAY);
thisMonth.set(Calendar.DAY_OF_MONTH,1);
int firstIndex=thisMonth.get(Calendar.DAY_OF_WEEK)-1;
int maxIndex=thisMonth.getActualMaximum(Calendar.DAY_OF_MONTH);
for(int i=0;i<maxIndex;i++){
days[firstIndex+i]=String.valueOf(i+1);
}
%>
<html>
<head>
<title>工作日设定</title>
<script language="javascript" src="s/jquery.min.js"></script>
<script language="javascript">
$(function(){
var days=new Array();
$("td").bind("dblclick",function(){
//alert($(this).attr("background-color));
});
$("td").click(function(){
//点击的时候不断切换
//alert(typeof($(this).text()));
//alert($(this).attr("background-color"))
var temp=$(this).text();
if(temp==''){}
else{
var num=days.length;
for (var i = 0; i < days.length; i++) {
if (days[i] == temp) days.splice(i,1);
}
if(num==days.length)
days.push(temp);
days.sort();
$(this).toggleClass("highlight");
alert(days.toString())
}
});
});
function look(){
//var yy=$("td[background-color=red]").size();
var yy=$("td").size();
alert(yy);
}
</script>
<script type="text/javascript">
</script>
</head>
<body >
<div>
<table width="800" border="0" align="center" cellspacing="1" >
<tr>
<th scope="col">周期日</th>
<th scope="col">周期一</th>
<th scope="col">周期二</th>
<th scope="col">周期三</th>
<th scope="col">周期四</th>
<th scope="col">周期五</th>
<th scope="col">周期六</th>
</tr>
<tr height="4"><td colspan="7"></td></tr>
<% for(int j=0;j<6;j++) { %>
<tr>
<%
for(int i=j*7;i<(j+1)*7;i++) {
if((i-firstIndex+1)==today){%>
<td width="30" height="23" align="center" bgcolor="gray" style="border:1 solid"><font color="#FFFFFF"><b><%=days[i]%></b></font></td>
<% }else{ %>
<td width="30" height="23" align="center" style="border:1 solid"><%=days[i]%></td>
<% }
}%>
</tr>
<% } %>
<tr height="10"><td colspan="7" > 红色为假期。。</td></tr>
</table>
</div>
</body>
</html>