Javascript 在文本框中显示日期
我有3个按钮,即星期、上一个和下一个。单击“每周”按钮,它将显示文本框中选择的日期以及添加到其中的6天Javascript 在文本框中显示日期,javascript,html,label,Javascript,Html,Label,我有3个按钮,即星期、上一个和下一个。单击“每周”按钮,它将显示文本框中选择的日期以及添加到其中的6天(例如2013年6月26日至2013年7月2日)。 单击上一个按钮,它将在文本框中显示为2013年6月19日至2013年6月26日。 单击“下一步”按钮,它将在文本框中显示2013年7月2日至2013年7月8日。 这个过程还在继续。我想知道如何在javascript中实现这一点 enter code here <input type="text" id="txtdatetimesho
(例如2013年6月26日至2013年7月2日)
。
单击上一个按钮,它将在文本框中显示为2013年6月19日至2013年6月26日。
单击“下一步”按钮,它将在文本框中显示2013年7月2日至2013年7月8日
。
这个过程还在继续。我想知道如何在javascript
中实现这一点
enter code here
<input type="text" id="txtdatetimeshow" readonly="readonly"
style="height: 25px; width: 150px;
font-size: medium; font-family: Times New Roman;" runat="server" />
<input type="button" id="showweekbtn" runat="server" value="week"/>
<input type="button" id="sfprevbtn" runat="server" value="prev"/>
<input type="button" id="sfnextbtn" runat="server" value="next"/>
<script type="text/javascript">
$(document).ready(function()
{
var today=new Date();
var date=today.getDate();
var month=today.getMonth();
var year= today.getFullYear();
var month_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul",
"Aug", "Sep", "Oct", "Nov", "Dec");
var NextDate= new Date(year, month, date);//today's date
var weekdate=new Date(NextDate);
weekdate.setDate(weekdate.getDate()+6);//add 6 days to the date
var Ndate=NextDate.getDate()+" "+month_names[month]+" "+NextDate.getFullYear()+"-"+" "+weekdate.getDate()+" "+month_names[weekdate.getMonth()]+" "+weekdate.getFullYear();
var nextWeekDate=new Date(weekdate);
nextWeekDate.setDate(weekdate.getDate()+6);
var NWdate=weekdate.getDate()+" "+month_names[weekdate.getMonth()]+" "+weekdate.getFullYear()+"-"+""+nextWeekDate.getDate()+" "+month_names[nextWeekDate.getMonth()]+" "+nextWeekDate.getFullYear();
var prevWeekDate=new Date(NextDate);
prevWeekDate.setDate(NextDate.getDate()-6);//subtract 6 days to date
var PWdate=prevWeekDate.getDate()+" "+month_names[prevWeekDate.getMonth()]+" "+prevWeekDate.getFullYear()+"-"+NextDate.getDate()+" "+month_names[NextDate.getMonth()]+" "+NextDate.getFullYear();
//to show previous date
$("#sfprevbtn").click(function()
{
var prevDate=new Date(year,month,date-1);
var pdate=prevDate.getDate()+" "+month_names[month] +" "+prevDate.getFullYear();
$("#txtdatetimeshow").val(PWdate);
});
//to show next date
$("#sfnextbtn").click(function()
{
var nextDate=new Date(year,month,date+1);
var Ndate=nextDate.getDate()+" "+month_names[month] +" "+nextDate.getFullYear();
$("#txtdatetimeshow").val(NWdate);
});
//to show week view
$("#showweekbtn").click(function()
{
$("#txtdatetimeshow").val(Ndate);
});
});
</script>
在此处输入代码
$(文档).ready(函数()
{
var today=新日期();
var date=today.getDate();
var month=today.getMonth();
var year=today.getFullYear();
变量月份名称=新数组(“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”,
“八月”、“九月”、“十月”、“十一月”、“十二月”);
var NextDate=新日期(年、月、日);//今天的日期
var weekdate=新日期(下一个日期);
weekdate.setDate(weekdate.getDate()+6);//将6天添加到日期
var Ndate=NextDate.getDate()+“”+month_名称[月]+“”+NextDate.getFullYear()+“-”+“”+weekdate.getDate()+“”+month_名称[weekdate.getMonth()]+“”+weekdate.getFullYear();
var nextWeekDate=新日期(工作日);
nextWeekDate.setDate(weekdate.getDate()+6);
var NWdate=weekdate.getDate()+“”+month_名称[weekdate.getMonth()]+“”+weekdate.getFullYear()+“-”+“”+nextWeekDate.getDate()+“”+month_名称[nextWeekDate.getMonth()]+“”+nextWeekDate.getFullYear();
var prevWeekDate=新日期(下一个日期);
prevWeekDate.setDate(NextDate.getDate()-6);//减去截止日期的6天
var PWdate=prevWeekDate.getDate()+“”+month_名称[prevWeekDate.getMonth()]+“”+prevWeekDate.getFullYear()+“-”+NextDate.getDate()+“”+month_名称[NextDate.getMonth()]+“”+NextDate.getFullYear();
//显示以前的日期
$(“#sfprevbtn”)。单击(函数()
{
var prevDate=新日期(年、月、日期-1);
var pdate=prevDate.getDate()+“”+月份名称[月份]+“”+prevDate.getFullYear();
$(“#txtdatetimeshow”).val(PWdate);
});
//显示下一个日期
$(“#sfnextbtn”)。单击(函数()
{
var nextDate=新日期(年、月、日期+1);
var Ndate=nextDate.getDate()+“”+month\u名称[月份]+“”+nextDate.getFullYear();
$(“#txtdatetimeshow”).val(NWdate);
});
//显示周视图
$(“#showweekbtn”)。单击(函数()
{
$(“#txtdatetimeshow”).val(数据);
});
});
试试:
我认为您需要的是一些JavaScript,当您单击next/prev按钮时,它将继续增加/减少周范围,而不仅仅是当前周之前/之后的一周 原始代码的问题在于,您实际上硬编码了下一周/上一周字符串,因为下一周/上一周按钮实际上没有更改其值。我根据您的代码编写了一些代码,可以(我希望)满足您的需求:
$(document).ready(function()
{
var current=new Date();
var month_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul",
"Aug", "Sep", "Oct", "Nov", "Dec");
getWeek(0);
//to show previous date
$("#sfprevbtn").click(function()
{
getWeek(-1);
});
//to show next date
$("#sfnextbtn").click(function()
{
getWeek(1);
});
//to show week view
$("#showweekbtn").click(function()
{
current=new Date();
getWeek(0);
});
function getWeek(weeks){
current = new Date(current.getTime() + weeks * 6 * 24 * 60 * 60 * 1000)
var newDate = new Date(current.getTime() + 6 * 24 * 60 * 60 * 1000);
var dateString=current.getDate()+" "+month_names[current.getMonth()] +" "+current.getFullYear() + " - " + newDate.getDate()+" "+month_names[newDate.getMonth()] +" "+newDate.getFullYear();
$("#txtdatetimeshow").val(dateString);
}
});
您会注意到我编写了一个函数getWeek(),它根据初始日期计算下周间隔。“当前”日期从今天开始,但当您单击“下一周/上一周”以查看不同的周间隔时,相应地增加/减少。“week”按钮在这一点上并不是很必要,但我把它放在那里了,所以如果你点击它,它会将你返回到当前日期的那个星期
我希望这对你有帮助。如果这不是你想要的,请让我知道,我很高兴能进一步帮助你。快乐的脚本 考虑您对另一个答案的评论: JavaScript 试试这个: 函数displayDate() { var today=新日期()
你准备好了什么代码?你尝试了什么?我已经发布了我的代码。请帮助我,但我不想硬编码我的日期。默认情况下,我必须选择今天。请告诉我如何获得它?
$(document).ready(function()
{
var current=new Date();
var month_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul",
"Aug", "Sep", "Oct", "Nov", "Dec");
getWeek(0);
//to show previous date
$("#sfprevbtn").click(function()
{
getWeek(-1);
});
//to show next date
$("#sfnextbtn").click(function()
{
getWeek(1);
});
//to show week view
$("#showweekbtn").click(function()
{
current=new Date();
getWeek(0);
});
function getWeek(weeks){
current = new Date(current.getTime() + weeks * 6 * 24 * 60 * 60 * 1000)
var newDate = new Date(current.getTime() + 6 * 24 * 60 * 60 * 1000);
var dateString=current.getDate()+" "+month_names[current.getMonth()] +" "+current.getFullYear() + " - " + newDate.getDate()+" "+month_names[newDate.getMonth()] +" "+newDate.getFullYear();
$("#txtdatetimeshow").val(dateString);
}
});
var date = new Date();
/* IMPORTANT PART */
date.setDate(date.getDate() + 6);
/* ------ */
var d = (date.getDate().toString()+" "+(parseInt(date.getMonth(),10) +1)+ " "+date.getFullYear().toString()).split(" ");
if(d[0].length == 1)
d[0] = "0"+d[0];
if(d[1].length == 1)
d[1] = "0"+d[1];
alert(d.join(" "));
var date=today.toISOString().slice(0, -14);
// Strip last 14 characters, ISO format is like
// 2012-12-30T17:41:49.027Z but we want
// 2012-12-30
document.getElementById("fname").value=date;
}