![](/img/trans.png)
[英]How to use JQuery DatePicker or angularJS to display days of the week alone?
[英]Setting jquery datepicker certain days of the week unclickable
我有此功能,它將收集某些天的數值,以便在將禁用這些天的另一功能中使用。
/* grab off days*/
function off(){
for (var key in offDays) {
if (offDays.hasOwnProperty(key)) {
return offDays[key];
}
}
}
例如,對於星期日和星期一,將返回0,1。 現在我想用那些日子來禁用datepicker上的日子,但是當我使用以下代碼時,它只禁用了orderpicker中的第一個。我想我需要以某種方式遍歷,但是如何?
var m = date.getMonth(), d = date.getDate(), y = date.getFullYear();
//console.log('Checking (raw): ' + m + '-' + d + '-' + y);
for (i = 0; i < disabledDays.length; i++) {
if($.inArray((m+1) + '-' + d + '-' + y,disabledDays) !== -1 || new Date() > date) {
//console.log('bad: ' + (m+1) + '-' + d + '-' + y + ' / ' + disabledDays[i]);
return [false];
}
if(date.getDay() === off()){
return [false];
}
}
檢查最后一個if語句
嘗試
var disabledDays = ["1-24-2014"];
var offDays = {
"tues": 2,
"weds": 3,
"thurs": 4
};
var offds = $.map(offDays, function (day) {
return day
})
$('input').datepicker({
beforeShowDay: function (date) {
var m = date.getMonth(),
d = date.getDate(),
y = date.getFullYear(),
str = (m + 1) + '-' + d + '-' + y;
if ($.inArray(str, disabledDays) !== -1 || new Date() > date) {
return [false];
}
if ($.inArray(date.getDay(), offds) !== -1) {
return [false];
}
return [true]
}
})
演示: 小提琴
您可以使用beforeShowDay
函數來檢查給定的日期是否已啟用:
beforeShowDay: function (a) {
var d = a.getFullYear() + '-' + (a.getMonth() + 1) + '-' + a.getDate();
if (d==='2014-1-20') {//WILL DISABLE 20 Jan 2014
return [false, "", "disabled date"];
} else {
return [true, "", ""];
}
}
這個小提琴在這里有一個工作樣本
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.