js获取文本框的日期,并且进行加减,以得到另一个日期

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js获取文本框的日期,并且进行加减,以得到另一个日期相关的知识,希望对你有一定的参考价值。

我A文本框的日期是通过日历控件添加进去的,通过getelement获取到A的日期了,B文本框的日期需要将A的日期推后几天,也就是将A的日期+12345就可以了吧。那么问题来了,现在获取到A的日期是2014-10-10的话,推后10天,B得到的就是2014-10-1010。一看就是把A的内容获取成文本了,没有进行加减,该怎么办呢

<script>
var d= new Date("2014-10-10");//这里日期是传递过来的,可以自己改
d.setDate(d.getDate() + 10);//天数+10
var nd=d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate();//新日期
alert(nd);
</script>
参考技术A 先把文本框A的值转为Date对象,对Date对象操作后将其转为字符串,再传给B
function changeDate()
var offset = 10;
var dateStrA = txtA.value;
var year = dateStrA.substring(0,4);
var month = Number(dateStrA.substring(5,7))-1;
var date = Number(dateStrA.substring(8,10))+offset;
var dateB = new Date();
dateB.setFullYear(year,month,date);
var year2 = dateB.getFullYear();
var month2 = (dateB.getMonth()+1)+"";
var date2 = dateB.getDate()+"";
if (month2.length == 1) month2 = "0"+month2;
if (date2.length == 1) date2 = "0"+date2;
txtB.value = year2 + "-" + month2 + "-" + date2;

ASP求日期加减的问题

ASP页面,有三个文本框,一个输入日期,一个输入数字,在输入第二个文本框后把日期加上数字后的值送到第三个文本框,请问要如何实现?

你这个需求,用JS写比较好,用ASP写的话还得提交到服务器再回显出来,多了一道程序显得很烦琐。

JS的写法是这样:
var newdate=new date("2010-11-15"); //先把用户输入的第一个文本框的日期转换为日期对象
newdate.setDate(newdate.getDate() + 3); //设置newdate对象中的日期值为一个新的日期。
alert("加上3天后的新日期是:"+newdate.getDate());

ASP的日期加减写法是用dateadd函数来实现,例:
newdate=dateadd("d",3,"2010-11-15")
response.write newdate '此时输出值为2010-11-18

//----补充:
上面JS中用到的new Date,setDate,getDate以及ASP示例中用到的dateadd等函数,可以去w3school这个网站查相应的js手册及vbs手册。里面有详细的关于这些函数的说明。
参考技术A 在表单中添加广本框,第一个Date1,天数Days,第二个Date2
同时添加一个提交按钮,修改Date2的默认值<input name="Date2" value="<%=sDate2%>">,将以下代码写入页头即可
<%
dim sDate1, sDate2, sDays
sDate1 = request.form("Date1")
sDays = cint(request.form("Days"))
if sDate1<>"" and isdate(sDate1) and sDays<>"" and isnumeric(sDays) then
sDate2 = dateadd("d", sDays,sDate1)
end if
%>
参考技术B 楼上的已经回答的很好了,楼主照做吧

以上是关于js获取文本框的日期,并且进行加减,以得到另一个日期的主要内容,如果未能解决你的问题,请参考以下文章

js怎样将一个文本框里的时间设成某日期的一个月后

用JS怎样获取文本框的值

c++获取文本框的值

js实现点击内容到文本框再点击更换内容

在js中,如何替换一个文本中的多个字符?

怎么取得repeater中其中一个文本框的值