如何计算 jquery-ui 日期选择器中日期类型 "dd-mm-yy" 的周数?
how to calculate week number for date type "dd-mm-yy" in jquery-ui datepicker?
我在我的应用程序中使用了 jquery-ui 日期选择器。我想计算一个日期类型为 "dd-mm-yy" 的周数,但它给了我一个错误的周数我意识到它使用 "mm-dd-yy" 日期类型来计算周数。
我使用了以下代码:
<input type="text" class="calendar">
<input type="text" class="week">
$(function() {
$(".calendar").datepicker({dateFormat: "dd/mm/yy",
showWeek: true,
onSelect: function(dateText, inst) {
dateFormat: "'Week Number '" + $.datepicker.iso8601Week(new Date(dateText)),
$(".week").val('Week:' + $.datepicker.iso8601Week(new Date(dateText)));
}
});
$(".calendar").datepicker("setDate", new Date());
});
将此 link 添加到 JSFiddle 资源
https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.11.1/moment.js
现在 运行 仅此代码
$(document).ready(function(){
var weekday = moment("12-25-1995", "MM-DD-YYYY").week();
alert(weekday);
});
使用 inst
得到 selectedYear
、selectedMonth
和 selectedDay
并从这些值构造 Date
而不是 dateText
。
代码如下:
$(function() {
$(".calendar").datepicker({
dateFormat: "dd/mm/yy",
showWeek: true,
onSelect: function(dateText, inst) {
var newDate = new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay);
dateFormat: "'Week Number '" + $.datepicker.iso8601Week(newDate),
$(".week").val('Week:' + $.datepicker.iso8601Week(newDate));
}
});
$(".calendar").datepicker("setDate", new Date());
});
这是更新后的 JSFiddle。
我在我的应用程序中使用了 jquery-ui 日期选择器。我想计算一个日期类型为 "dd-mm-yy" 的周数,但它给了我一个错误的周数我意识到它使用 "mm-dd-yy" 日期类型来计算周数。
我使用了以下代码:
<input type="text" class="calendar">
<input type="text" class="week">
$(function() {
$(".calendar").datepicker({dateFormat: "dd/mm/yy",
showWeek: true,
onSelect: function(dateText, inst) {
dateFormat: "'Week Number '" + $.datepicker.iso8601Week(new Date(dateText)),
$(".week").val('Week:' + $.datepicker.iso8601Week(new Date(dateText)));
}
});
$(".calendar").datepicker("setDate", new Date());
});
将此 link 添加到 JSFiddle 资源
https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.11.1/moment.js
现在 运行 仅此代码
$(document).ready(function(){
var weekday = moment("12-25-1995", "MM-DD-YYYY").week();
alert(weekday);
});
使用 inst
得到 selectedYear
、selectedMonth
和 selectedDay
并从这些值构造 Date
而不是 dateText
。
代码如下:
$(function() {
$(".calendar").datepicker({
dateFormat: "dd/mm/yy",
showWeek: true,
onSelect: function(dateText, inst) {
var newDate = new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay);
dateFormat: "'Week Number '" + $.datepicker.iso8601Week(newDate),
$(".week").val('Week:' + $.datepicker.iso8601Week(newDate));
}
});
$(".calendar").datepicker("setDate", new Date());
});
这是更新后的 JSFiddle。