2010-11-15 82 views
0

我目前只有datepicker只允许星期五。我想继续只允许星期五,但修改此代码禁用一个日期:12-31-2010(恰好是星期五)。我已经看到了关于如何disable dates的代码示例,但我不知道如何将此功能添加到当前的代码中而不破坏它。只有jQuery Datepicker:只选择星期五和禁用一个特定日期

周五代码:

//Get todays date 
var m_names = new Array("January", "February", "March", 
"April", "May", "June", "July", "August", "September", 
"October", "November", "December"); 

var d = new Date(); 
var curr_date = d.getDate(); 
var curr_month = d.getMonth(); 
var curr_year = d.getFullYear(); 

//Function for datepicker 
$(function() { 
     $('#datepicker').datepicker({ 
     minDate: (new Date(d)), 
     beforeShowDay: function(d) {return (5==d.getDay()? [true,''] : [false,'']);} 
    }); 
}); 

回答

0
一个特异性目的日期

对不起我的错误答案 这是正确的

function enableFirday(d) { { 
    var disabledDate= new Date(2010,11,31); 

    var curr_date = d.getDate(); 
    var curr_month = d.getMonth(); 
    var curr_year = d.getFullYear(); 

    var dDate = new Date(curr_year, curr_month, curr_date); 
    return [(d.getDay() == 5 && dDate.toString() != disabledDate.toString()), '']; 
} 

$(document).ready(function() { 
     $("#datepicker9").datepicker({ 
    dateFormat: 'dd-mm-yy', 
    minDate: 1, 
    beforeShowDay: enableFirday 
}); 

});

我试试,我敢肯定它是正确的

+0

你可以**编辑**你回答,而不是发布一个新的 – 2010-11-15 06:54:55

+0

我不知道。谢谢 – DavideDM 2010-11-15 06:57:56

+0

非常好。谢谢,这个作品。不能upvote你,但非常感谢你的帮助。 – tripletwist 2010-11-15 07:06:45

0

你可以试试这个:

//Get todays date 
var m_names = new Array("January", "February", "March", 
"April", "May", "June", "July", "August", "September", 
"October", "November", "December"); 

var d = new Date(); 
var curr_date = d.getDate(); 
var curr_month = d.getMonth(); 
var curr_year = d.getFullYear(); 

//Function for datepicker 
$(function() { 
     $('#datepicker').datepicker({ 
     minDate: (new Date(d)), 
     beforeShowDay: function(d) {return (5==d.getDay() || (((d.getMonth()+1) + '-' + d.getDate() + '-' + d.getFullYear()) == '12-31-2010'))? [true,''] : [false,'']);} 
    }); 
}); 
+0

谢谢你的帮助!但这不起作用。使用此代码,DatePicker不会激活。再次感谢。 – tripletwist 2010-11-15 06:21:16

0

如果你想要禁用,你必须改变功能beforeShowDay这样

function(d) { 
    var disabledDate= new Date(2010,12,31); 
    return [(d.getDay() == 5 && d != disabledDate), '']; 
} 
+0

提前道歉,但我不知道如何将其整合到我的代码上面。您的建议非常感谢。 – tripletwist 2010-11-15 06:33:01

+0

我认为它是'||'而不是'&&'。你也在比较我认为总会返回错误的对象。尝试'd.toString()!= disabledDate.toString()' – Reigel 2010-11-15 06:33:45

+0

在这里完成jquery新手,不知道这是什么意思。任何帮助表示赞赏。 – tripletwist 2010-11-15 06:43:10

相关问题