我在Laravel,PHP,Jquery中构建了一种日历应用程序。用户可以设置定期事件。
在日常活动中,他们可以选择他们希望活动发生的那一天。在月度活动中,也可以,他们可以选择活动重新开始的月份。
在每周活动中,有一个问题:由于我们没有真正跟踪日历中的周数,因此我无法确定如何使其重复出现。
我的第一个想法是弄清楚这个月的一周,然后让他们选择他们希望它发生的那一周。不会工作,因为几个月有不同的周数 - 有些发生在4周内,有些发生在5周内,有些发生在6周内(比如这一周)。获取我正在使用的月份的代码:
Date.prototype.getMonthWeek = function(){
var firstDay = new Date(this.getFullYear(), this.getMonth(), 1).getDay();
return Math.ceil((this.getDate() + firstDay)/7);
}
$("#result").html("Today is week " + new Date().getMonthWeek() );
然后我的想法是从特定日期开始偶数或奇数周。这将限制我将事件设置为每周或每两周重复一次,但是可以正常工作,直到我认为除了创建事件之外,用户无法确定哪一周是偶数还是奇数,测试它是否重新出现。 / p>
然后,获得一年中的一周。甚至几周与奇数周相比。但是,如果这一年有一个奇数周,那将在1月份发生两次。
我正在寻找实现这一目标的最简单方法,而且我真的没有脑力,任何可能的解决方案?
答案 0 :(得分:0)
你不能使用像PHP's date这样的功能吗?这可以选择一年中的一周。
如果你想去js路线,我强烈推荐moment.js,你可以这样做:moment().add(‘weeks’, 1)