0
我试图从Jquery UI datepicker获取周数(1,2,3,4,5)。我搜索并获得iso8601Week的代码,但不是正常的周数。从Jquery UI datepicker获取正常周数
好心帮
我试图从Jquery UI datepicker获取周数(1,2,3,4,5)。我搜索并获得iso8601Week的代码,但不是正常的周数。从Jquery UI datepicker获取正常周数
好心帮
这应该给你接近你想要什么,但我只是烟雾测试,并有可能是需要解决的一些边界条件。
我基本上采取了该月的第一天的iso8601Week,并从选定的日期减去它。这与大多数日期的情况一样,但如果在星期四之前下降,ISO 8601会在去年的1月4日之前放置。这是针对%,这52
的代码假定称为testDate输入和一个标签叫LABEL1:
$('#testDate').datepicker({
onSelect: function(dateText, inst) {
var d = new Date(dateText);
var d1 = new Date(d.getFullYear(), d.getMonth(), 1)
var x = $.datepicker.iso8601Week(d) % 52;
var y = $.datepicker.iso8601Week(d1) % 52;
$('#label1').text(x-y+1);
}
});
我留在所有的这些部分结果的变量,所以你可以用鼓捣各地值。此代码假定该星期从星期一开始(这是ISO 8601标准),并且星期一之前的部分星期是第一周。因此,如果该月在星期一开始,则第一星期一在第一星期,如果该月在第二周开始,第一个星期一在第二周。如果这个月的第二个月在星期一和第二个星期,这看起来有点奇怪,但如果你不喜欢这个,你将不得不花费一些时间具体时间决定你做什么做之类的。
谢谢,这正是我所期待的。它符合ISO 8601标准。我在2016年5月份进行了6个星期的测试,测试结果非常好。 – user375947
很高兴为你效劳。但是如果我可能会提出这个建议,如果你还没有,我会在一月和十二月相当彻底地测试几个星期。 – BobRodes