js 时间增加指定月份

js 时间增加指定月份,第1张

你看下是不是你想要的。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<TITLE> New Document </TITLE>

<META NAME="Generator" CONTENT="EditPlus">

<META NAME="Author" CONTENT="">

<META NAME="Keywords" CONTENT="">

<META NAME="Description" CONTENT="">

<SCRIPT LANGUAGE="JavaScript">

<!--

function checknow() {

    var now = document.getElementById("now").value

var month= document.getElementById("month").value

if (month != "" && month.length > 0 && !isNaN(month))

{

var arr = now.split("-")

var y = parseInt(arr[0])

var m = parseInt(arr[1])

var d = parseInt(arr[2])

m += parseInt(month)

if (m > 12)

{

//y = parseInt(y + (m-12) / 12)   

y = parseInt(y + m / 12)

m = m % 12

}

if (m == 2)

{

if (isPN(y,m,d))

{

d = 28

}

else {

    d = 29

}

}

var newDate = y + "-" + m + "-" + d

alert(newDate)

}

}

function isPN(year,month,day) {

    if (year % 100 == 0 && year % 400 == 0)

    {

return true

    }

if (year % 100 != 0 && year % 4 == 0)

{

return true

}

return false

}

//-->

</SCRIPT>

</HEAD>

<BODY>

<INPUT TYPE="text" NAME="now" id="now" value="2014-04-04">

<FORM METHOD=POST ACTION="">

<INPUT TYPE="text" NAME="month" id="month" onblur="checknow()">

</FORM>

</BODY>

</HTML>

输入月份:<input id="input" type="text"><button id="button">Click</button>

<div id="output"></div>

<script>

button.onclick=function(){

var month=Number(input.value)

if(month>0&&month<13){

output.innerHTML=month+"月是第"+(parseInt((month-1)/3)+1)+"季度"

}else{

output.innerHTML="月份输入错误!"

}

}

</script>

这个本身并不难,但你要把需求界定好,假如我输入2000-1-31,下一个日期是什么,2000-2-28?2月没有31号,还要考虑闰月的情况。

js里面var myDate = new Date()这样就可以得到当前日期,有很多方法可以使用,先想好要做的是什么样,本身实现没什么难度。

不愿意copy网上随处可见的代码过来,我也没有现成的代码,就这些吧。

二楼的挺好,

dt.setMonth(dt.getMonth() + num)

var d = dt.getDate()

这两行代码把问题解决了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7878866.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存