jQuery ui datepicker,从onSelect获取星期几

问题描述 投票:9回答:3

是否可以从datepicker的onSelect事件中获取星期几。

我知道我可以得到这个月的那一天,但我想要一周的这一天。即使只是当天的指数也会很好,例如0-6。

我知道你可以在beforeShowDay(或类似)事件中得到它,但我需要根据所选周的日期做出不同的反应。这与设置开放时间有关。

我可以点击服务器并找出答案,但这不会回复得足够快...理想情况下我希望在客户端上完成所有操作。

jquery jquery-ui datepicker uidatepicker
3个回答
15
投票

这应该做的伎俩:

function(event, ui) {
    var date = $(this).datepicker('getDate');
    var dayOfWeek = date.getUTCDay();
};

这样做的好处是不需要解析为Datepicker的文本字段选择的任何日期格式--getDate方法返回一个原生的Javascript Date对象,然后您可以轻松地提取所需的日期字段。


6
投票

此外,如果你想要一周中某一天的实际名称(不使用getUTCDay索引到['Sunday','Monday',...]之类的数组中,你可以使用datepicker对象本身给出这个给你,就像下面一样

var curDate = $(this).datepicker('getDate');
var dayName = $.datepicker.formatDate('DD', curDate);

这也可用于通过将DD替换为您所追求的任何组件来缩短一周的名称(M),一个月的长或短日期(MM或M)。


3
投票

我会onSelect将文本框的值转换为javascript日期,并使用getUTCDay()来获取星期几的值。 http://www.w3schools.com/jsref/jsref_getutcday.asp

© www.soinside.com 2019 - 2024. All rights reserved.