Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在zebra datepicker中,如何从所选日期获取或提取周数?_Jquery_Datepicker - Fatal编程技术网

Jquery 在zebra datepicker中,如何从所选日期获取或提取周数?

Jquery 在zebra datepicker中,如何从所选日期获取或提取周数?,jquery,datepicker,Jquery,Datepicker,下面是我的尝试,但不起作用。第一行是初始化datepicker,然后可以设置一些选项,然后在onSelect部分中是如何尝试获取所选数据并将其转换为周数的,然后在测试中,我只是尝试提醒周数。一旦我开始工作,我会把周数放在某个地方使用 $("input#someid").Zebra_DatePicker({ format: 'm-d-Y', direction: 1, show_clear_date: 'FALSE', onSelect: function(view, elements) { //

下面是我的尝试,但不起作用。第一行是初始化datepicker,然后可以设置一些选项,然后在onSelect部分中是如何尝试获取所选数据并将其转换为周数的,然后在测试中,我只是尝试提醒周数。一旦我开始工作,我会把周数放在某个地方使用

$("input#someid").Zebra_DatePicker({
format: 'm-d-Y',
direction: 1,
show_clear_date: 'FALSE',
onSelect: function(view, elements) { //when a date is selected
    Date.prototype.getWeek = function() {
        var onejan = new Date(this.getFullYear(),0,1);
        return Math.ceil((((this - onejan) / 86400000) + onejan.getDay()+1)/7);
    }
    var myvariable = $( "#someid" ).val();
    var weekno = myvariable.getWeek();
    alert(weekno);
}
});

日期的格式很重要。它需要能够从m-d-Y(01-13-2014)格式转换为周数。例如,今天的日期结果是3,因为它是一年中的第三周。

我不确定Zebra_DatePicker是否给出了周数,但即使它没有直接给出周数,如果你有日期和月份,你也可以自己计算出来……例如这样

week = math.ceil((month * day)/7);
这将给你一年中的一周。另一方面,如果你甚至不能得到日期和月份,那么就通过拆分日期来得到它

var now = new Date(document.getElementById('element_id').value);//replace the element_id with actual input id of the zebra datepicker

//var now = new Date("02-01-2014");//hard coded date
var start = new Date(now.getFullYear(), 0, 0);
var diff = now - start;
var oneDay = 1000 * 60 * 60 * 24;
var day = Math.floor(diff / oneDay);
var week = Math.ceil(day/7);
alert(week);
干杯


另外,假设第三周从第15天开始,对吗?

这里有一个jsfiddle链接,对你来说似乎是可行的,但是如果第三周从第12天开始,它会改变公式吗?当然会。一切都在你手里。我把每周7天的事情记在心里,以此来计算一周。我除以7。这取决于你,就像你可以根据自己的选择使用5或6甚至5.5来获得想要的结果…如果你有任何困惑,请告诉我…如果你用5.5替换7,它将给你12日的第3周和11日的第2周。如果你有任何其他困惑,请告诉我,以便我可以为你清除它们…干杯:)得到奇怪的结果。一月份似乎不错,但二月份的计算不正确。2月1日的第1周应该是第5周。2月3日是第2周,而不是第6周。2月10日是第4周,而不是第7周。事实上,回顾一月,直到第22天才是正确的。从1月23日开始计算错误的周数。