JS显示上一周
<html>
<head>
<script>
var currDT;
var aryDay = new Array("日","一","二","三","四","五","六");//显示星期
var lastDay;//页面显示的最后一天
var firstDay;//页面显示的第一天
Date.prototype.format = function (format) {
var o = {
"M+": this.getMonth() + 1, //month
"d+": this.getDate(), //day
"h+": this.getHours(), //hour
"m+": this.getMinutes(), //minute
"s+": this.getSeconds(), //second
"q+": Math.floor((this.getMonth() + 3) / 3), //quarter
"S": this.getMilliseconds() //millisecond
}
if (/(y+)/.test(format)) format = format.replace(RegExp.$1,
(this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o) if (new RegExp("(" + k + ")").test(format))
format = format.replace(RegExp.$1,
RegExp.$1.length == 1 ? o[k] :
("00" + o[k]).substr(("" + o[k]).length));
return format;
}
//初始化日期加载
function initDate() {
currDT = new Date();
showdate.innerHTML = currDT.toLocaleDateString(); //显示日期
var dw = currDT.getDay();//从Date对象返回一周中的某一天(0~6)
var tdDT;//日期 //在表格中显示一周的日期
var objTB = document.getElementById("mytable");//取得表格对象
for(var i=0;i<7;i++) {
tdDT = getDays()[i];
if(tdDT.toLocaleDateString() == currDT.toLocaleDateString()) {
objTB.rows[0].cells[i].style.color = "red";//currDT突出显示
}
dw = tdDT.getDay();//星期几
objTB.rows[0].cells[i].innerHTML = tdDT.getMonth()+1 + "月" + tdDT.getDate() + "日 星期" + aryDay[dw];//显示
}
//重新赋值
lastDay = getDays()[6];//本周的最后一天
firstDay = getDays()[0];//本周的第一天
} //取得当前日期一周内的某一天
function getWeek(i) {
var now = new Date();
var n = now.getDay();
var start = new Date();
start.setDate(now.getDate() - n + i);//取得一周内的第一天、第二天、第三天...
return start;
} //取得当前日期一周内的七天
function getDays() {
var days = new Array();
for(var i=1;i<=7;i++) {
days[i-1] = getWeek(i);
}
return days;
} //取得下一周的日期数(共七天)
function getNextWeekDatas(ndt) {
var days = new Array();
for(var i=1;i<=7;i++) {
var dt = new Date(ndt);
days[i-1] = getNextWeek(dt,i);
}
return days;
} //指定日期的下一周(后七天)
function getNextWeek(dt,i) {
var today = dt;
today.setDate(today.getDate()+i);
return today;
} //取得上一周的日期数(共七天)
function getPreviousWeekDatas(ndt) {
var days = new Array();
for(var i=-7;i<=-1;i++) {
var dt = new Date(ndt);
days[7+i] = getPreviousWeek(dt,i);
}
return days;
} //指定日期的上一周(前七天)
function getPreviousWeek(dt,i) {
var today = dt;
today.setDate(today.getDate()+i);
return today;
} //下一周
function nextWeek() {
setCurrDTAfter();//重设时间
showdate.innerHTML = currDT.toLocaleDateString(); //显示日期 //在表格中显示一周的日期
var objTB = document.getElementById("mytable");//取得表格对象
var dw = currDT.getDay();//从Date对象返回一周中的某一天(0~6)
var tdDT;//日期 for(var i=0;i<7;i++) {
tdDT = getNextWeekDatas(lastDay)[i];
if(tdDT.toLocaleDateString()==currDT.toLocaleDateString()) {
objTB.rows[0].cells[i].style.color = "red";//currDT突出显示
}
dw = tdDT.getDay();//星期几
objTB.rows[0].cells[i].innerHTML = tdDT.getMonth()+1 + "月" + tdDT.getDate() + "日 星期" + aryDay[dw]; //显示
}
//重新赋值
firstDay = getNextWeekDatas(lastDay)[0];//注意赋值顺序1
lastDay = getNextWeekDatas(lastDay)[6];//注意赋值顺序2
} //上一周
function previousWeek() {
settCurrDTBefore();
showdate.innerHTML = currDT.toLocaleDateString(); //显示日期 //在表格中显示一周的日期
var objTB = document.getElementById("mytable");//取得表格对象
var dw = currDT.getDay();//从Date对象返回一周中的某一天(0~6)
var tdDT;//日期 for(var i=0;i<7;i++) {
tdDT = getPreviousWeekDatas(firstDay)[i]; if(tdDT.toLocaleDateString()==currDT.toLocaleDateString()) {
objTB.rows[0].cells[i].style.color = "red";//currDT突出显示
}
dw = tdDT.getDay();//星期几
objTB.rows[0].cells[i].innerHTML = tdDT.getMonth()+1 + "月" + tdDT.getDate() + "日 星期" + aryDay[dw];//显示
}
//重新赋值
lastDay = getPreviousWeekDatas(firstDay)[6];//注意赋值顺序1
firstDay = getPreviousWeekDatas(firstDay)[0];//注意赋值顺序2
} //当前日期后第七天
function setCurrDTAfter() {
currDT.setDate(currDT.getDate()+7);
} //当前日期前第七天
function settCurrDTBefore() {
currDT.setDate(currDT.getDate()-7);
}
</script>
</head>
<body onload="initDate()">
<table align="center">
<tr>
<td>
<input type="button" name="previousweek" value="上一周" onclick="previousWeek();"/>
<span id="showdate"></span>
<input type="button" name="previousweek" value="下一周" onclick="nextWeek();"/>
</td>
</tr>
</table>
<!--显示日期-->
<table id="mytable" cellspacing="0" border=="1" align="center" width="90%">
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
</body>
</html>
JS显示上一周的更多相关文章
- JS原生上传大文件显示进度条-php上传文件
JS原生上传大文件显示进度条-php上传文件 在php.ini修改需要的大小: upload_max_filesize = 8M post_max_size = 10M memory_li ...
- JavaScript(js)获取本周,本月,本季,本年,上月,上周,上季,去年,上二周,上二月的时间段的代码
function dateChange(name){ var beginTimeObject = document.getElementById("beginTime"); var ...
- js实现上传文件实时显示缩略图
<input name="coverImage" onClick="" onchange="setImagePreview(this);&quo ...
- js获取上一个月、下一个月格式为yyyy-mm-dd的日期
/** * 获取上一个月 * * @date 格式为yyyy-mm-dd的日期,如:2014-01-25 */ function getPreMonth(date) { var arr = date. ...
- vue 实现上一周、下一周切换功能
效果图: html 显示部分: js 显示部分: preNextBtn(val){ let _this = this; this.tableList = []; //数据重置为空 _this.show ...
- 上一周,小白的我试着搭建了两个个人博客:在github和openshift上
上一周,突发奇想,想搭建个自己的博客. 由于是突发奇想,自然想先找免费的试试手.仔细搜索下,选定了目标Openshift和Github. Openshift 安装WordPress OpenShift ...
- 怎么通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端?
今天在论坛上看到这样一个问题,有必要编辑搜集下. 问题描述:怎么通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端 题主用jquery接收 <input name= ...
- KindEditor文件上传成功前端显示上传失败
一.使用kindeditor 上传图片 ,根据kindeditor 要求返回了相应的数据, 但是kindeditor 插件显示上传失败!!! 解决方法: 各个版本位置可能不同!!! 1.修改kinde ...
- [转]WordPress“添加媒体”文件时只显示上传到当前文章的附件图片
使用WordPress的朋友应该都清楚,特别是喜欢图文并茂的网站,肯定离不开的就是WordPress文章编辑页面的“添加媒体”按钮,每次点击就能弹出一个插入多媒体的界面,然后页面默认就会列举加载所有最 ...
随机推荐
- Python 3.6 TypeEror: iter() returned non-iterator of type
环境:Python 3.6 class Fabs(object): def __init__(self,max): self.max = max self.n, self.a, self.b = 0, ...
- java多线程-创建线程
大纲: Thread创建线程. Runnable接口. Callable接口. 小结 一.java创建线程--继承Thead类 创建一个类继承Thead类,并重写run方法. class Test { ...
- spark项目打jar包,不包含依赖包问题的解决方案
mvn clean package打包maven-archetype-webapp项目时,打包后的jar包含项目中引用的jar包(解压后,在WEB-INF有一个lib目录,该目录下有所有依赖包). m ...
- PlayMaker Rotate旋转
每秒 绕 Y轴 旋转 180度 ,每帧都执行. 不勾选Every Frame的话就只会旋转一帧.
- Perf -- Linux下的系统性能调优工具,第 2 部分 特殊用法以及内核调优示例
https://www.ibm.com/developerworks/cn/linux/l-cn-perf2/ 本文内容简介 之前介绍了 perf 最常见的一些用法,关注于 Linux 系统上应用程序 ...
- SSM项目spring配置文件详细步骤(分门别类、灵巧记忆)
spring-dao.xml文件 1.配置外部db.property文件: <context:property-placeholder location="classpath:jdbc ...
- mathjax符号
mathjax公式 \(\delta\): \delta \(\Delta\): \Delta \(\int\): \int \(\iint\): \iint \(\approx\): \approx ...
- 动态LINQ(Lambda表达式)构建
using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; us ...
- elasticsearch排序-----5
我们之前查询出的结果都会有一个_score分值表示列出结果与搜索结果的相关性,该值越高排序位置越靠前,es具体是如何计算该值的,我们认真来看看. 1.根据字段值排序 比如我们要查询/index5下su ...
- BZOJ4653: [Noi2016]区间(线段树 双指针)
题意 题目链接 Sol 按照dls的说法,一般这一类的题有两种思路,一种是枚举一个点\(M\),然后check它能否成为答案.但是对于此题来说好像不好搞 另一种思路是枚举最小的区间长度是多少,这样我们 ...