前次网友给写了个,
但是不是很正确,会就算出4月33号来。。<input type="text" id="textyear" value="2009">年<input type="button" value="计算周数" onclick="getWeekNumber()"><span id="span1"></span>
<br/>
<input type="text" id="textweek" value="18">周<input type="button" value="计算日期" onclick="getDates()"><span id="span2"></span><script>
function getWeekNumber(){
var theYear = document.getElementById("textyear").value;
var firstDay = new Date(theYear + "/01/01");
var counter = 0;
while(firstDay.getFullYear() == theYear){
firstDay.setDate(firstDay.getDate() + 7);
counter++;
}
document.getElementById("span1").innerHTML = theYear + "年有" + counter + "周";
}function getDates(){
var theYear = document.getElementById("textyear").value;
var theWeek = document.getElementById("textweek").value;
var theDay = new Date(theYear + "/01/01");
theDay.setDate(theDay.getDate() + 7 * theWeek);
while(theDay.getDay() != 1){
theDay.setDate(theDay.getDate() - 1);
}
document.getElementById("span2").innerHTML = theYear + "年,第" + theWeek + "周:"
+ theDay.getFullYear() + "-" + (theDay.getMonth() + 1) + "-" + theDay.getDate()
+ " ~ "
+ theDay.getFullYear() + "-" + (theDay.getMonth() + 1) + "-" + (theDay.getDate() + 6);
}
</script>
上面是网友给出的代码,周内的日期计算的不正确,那为大侠给该下,或发个正确的。
但是不是很正确,会就算出4月33号来。。<input type="text" id="textyear" value="2009">年<input type="button" value="计算周数" onclick="getWeekNumber()"><span id="span1"></span>
<br/>
<input type="text" id="textweek" value="18">周<input type="button" value="计算日期" onclick="getDates()"><span id="span2"></span><script>
function getWeekNumber(){
var theYear = document.getElementById("textyear").value;
var firstDay = new Date(theYear + "/01/01");
var counter = 0;
while(firstDay.getFullYear() == theYear){
firstDay.setDate(firstDay.getDate() + 7);
counter++;
}
document.getElementById("span1").innerHTML = theYear + "年有" + counter + "周";
}function getDates(){
var theYear = document.getElementById("textyear").value;
var theWeek = document.getElementById("textweek").value;
var theDay = new Date(theYear + "/01/01");
theDay.setDate(theDay.getDate() + 7 * theWeek);
while(theDay.getDay() != 1){
theDay.setDate(theDay.getDate() - 1);
}
document.getElementById("span2").innerHTML = theYear + "年,第" + theWeek + "周:"
+ theDay.getFullYear() + "-" + (theDay.getMonth() + 1) + "-" + theDay.getDate()
+ " ~ "
+ theDay.getFullYear() + "-" + (theDay.getMonth() + 1) + "-" + (theDay.getDate() + 6);
}
</script>
上面是网友给出的代码,周内的日期计算的不正确,那为大侠给该下,或发个正确的。
解决方案 »
- ExtJS3.4.0的AJAX同步问题怎么解决
- ie9 js判断文件上传大小
- 求javascript高手来帮忙解释一下这个程序集
- 请教JavaScript页面间传递参数的问题
- new ActiveXObject("Excel.Application")的问题
- (20分)用js实现 动态生成日子选择下拉框
- 求助!!js多个radiobutton只能选择一个的写法
- 当选择某个下拉框的时候,如何实现自动在后面跟一个文本框?高分!!!
- 怎样在网页中实现浏览器中stop按钮的功能?
- 刷新父窗口问题?回答后马上给分
- 用户在线编辑word,有可能打开word文档后并没有作改动就关闭了,如何判断文档是否被改动?
- js如何访问cellpadding
<br/>
<input type="text" id="textweek" value="18">周 <input type="button" value="计算日期" onclick="getDates()"> <span id="span2"> </span><script>
function getWeekNumber(){
var theYear = document.getElementById("textyear").value;
var firstDay = new Date(theYear + "/01/01");
var counter = 0;
while(firstDay.getFullYear() == theYear){
firstDay.setDate(firstDay.getDate() + 7);
counter++;
}
document.getElementById("span1").innerHTML = theYear + "年有" + counter + "周";
}function getDates(){
var theYear = document.getElementById("textyear").value;
var theWeek = document.getElementById("textweek").value;
var theDay = new Date(theYear + "/01/01");
theDay.setDate(theDay.getDate() + 7 * theWeek);
while(theDay.getDay() != 1){
theDay.setDate(theDay.getDate() - 1);
}
var endDay = new Date(theDay.getTime() + 7 * 24 * 60 * 60 * 1000);
document.getElementById("span2").innerHTML = theYear + "年,第" + theWeek + "周:"
+ theDay.getFullYear() + "-" + (theDay.getMonth() + 1) + "-" + theDay.getDate()
+ " ~ "
+ endDay.getFullYear() + "-" + (endDay.getMonth() + 1) + "-" + endDay.getDate();
}
</script>