如何在jquery-ui中使用datepicker在不影响其他值的情况下禁用星期日

时间:2014-09-25 12:35:40

标签: javascript jquery jquery-ui jquery-ui-datepicker

我想制作一个不包括星期日的日期选择器。但是,在我的工作中,我不知道为什么它不起作用。任何形式的帮助表示赞赏。

非常感谢你。

这是我的代码

<table>

    <tr>
        <td><label > Schedule Day : </label></td>
        <td><input type="text" id='date' name="date" required></td>
        <script src="../../Script/jQuery/jquery-ui/js/jquery-ui.js"></script>
        <link rel="stylesheet" href="../../Script/jQuery/jquery-ui/css/ui-lightness/jquery-ui-1.9.2.custom.css" />
        <script>



        $("#date").datepicker({


            minDate: 0,
            maxDate: 7,
            changeMonth:true,
            changeYear:false,
            dateFormat:"yy-mm-dd",
            inline: true,
            beforeShowDay: noSunday;
        });

        function noSunday(date){ 
            return [date.getDay() != 0, ''];
        }; 



        </script>   

        <td><input type='submit' id='btn' name="btnchkavlb" value="Check Availability"></td>
    </tr>
</table>

4 个答案:

答案 0 :(得分:0)

试试这个:

function noSunday(date){
    var day = date.getDay();
    return [(day > 0), ''];
}; 

并将您的jquery代码放在document.ready()块中。

答案 1 :(得分:0)

您必须使用DatePicker的beforeShowDate事件,如下所示:

$(""#date"").datepicker({
        minDate: 0,
        maxDate: 7,
        changeMonth:true,
        changeYear:false,
        dateFormat:"yy-mm-dd",
        inline: true,
beforeShowDay: function(date) {
var day = date.getDay();
return [day != 0,''];
}
})​​​​​;​

答案 2 :(得分:0)

您可以使用

function noSunday(date){
    var d = date.getDay();
    return [(d > 0), ''];
}; 

答案 3 :(得分:0)

对不起大家,我已经回答了我自己的问题x_x

welp我试图将beforeShowDay:noSunday放在顶部,它起作用D:。

$("#date").datepicker({                                     
    beforeShowDay: noSunday,
    minDate: 0,
    maxDate: <?php echo $maxDaysBeforeSched;?>,
    changeMonth:true,
    changeYear:false,
    dateFormat:"yy-mm-dd",
    inline: true

});