JavaScript日期从特定日期开始递增

时间:2015-04-11 23:12:14

标签: javascript html

<div id="date">
    <script>
        newDate();
    </script>
</div>
<div id="date">
    <script>
        newDate() + 1;
    </script>
</div>
<div id="date">
    <script>
        newDate() + 2;
    </script>
</div>

以上是我要将脚本应用到的HTML。

function newDate() {
    var _date = new Date("April 10");
    document.getElementById("date").innerHTML = _date;
}

基本上,我要做的是编写一个脚本,以“4月10日星期五”的格式显示日期,当我去下一个div并执行脚本时,它将生成“4月11日星期六”。但是现在我甚至无法发布日期。有人能指出我会简化并帮助我的方向吗?

2 个答案:

答案 0 :(得分:1)

我希望这可以帮助您开始正确的道路。我使用Jquery使事情变得更简单。

这里发生了什么

基本上我使用

遍历每个日期div
.each()

我初始化今天的日期。我创建了一个从当前日期创建日期对象的函数。然后我使用

提取正确的部分
.getDay()
.getMonth()

您需要做什么

现在您需要处理的是处理月末。为此,请创建变量。

var currentmonth=
var currentyear=

获取当月的最后日期,如果到达月底,则以合理的方式增加内容。这将有助于您解决该问题。

Get first and last date of current month with javascript or jquery

入门代码:

https://jsfiddle.net/mughdmvn/

如果您有任何其他问题,请告诉我

var current = 5;
var create = function(){
    return new Date(2015, 4, current);
}
var monthNames = ["January", "February", "March", "April", "May", "June",
       "July", "August", "September", "October", "November", "December"];

$(".date").each(function(){
    init = create();
    $(this).text(""+ monthNames[init.getMonth() - 1] + ", " +             init.getDate());
    current++;
})

答案 1 :(得分:0)

您可以为每个div分配一个单独的ID,并使用for循环遍历它们。

<div id="date1">
</div>
<div id="date2">
</div>
<div id="date3">
</div>
<script type="text/javascript">
    var thisDate = new Date(2015, 4, 9);
    for(var i = 1; i <= 3; i ++) {
        var thisDate = thisDate.setDate(thisDate.getDate() + 1);
        var dateDiv = document.getElementById("date" + i);
        dateDiv.innerHTML = thisDate.toDateString();
    }
</script>

请注意,toDateString()函数会返回星期几,然后是月份,日期和年份。

例如:

Fri Apr 10 2015