如何在 jQuery 中停用过去的日期

how to deactivate past dates in jquery

本文关键字:过去 日期 jQuery      更新时间:2023-09-26

我正在使用jquery日历,我想停用所有过去的日期。用户只能输入当前日期或大于当前日期的日期。我正在使用此代码

<!-- calendar code starts-->
    <link rel="stylesheet" type="text/css" href="calendar2/tcal.css" />
    <script type="text/javascript" src="calendar2/tcal.js"></script> 
    <script type="text/javascript"> 
      $("#dt").datepicker({ minDate: new Date() });
     </script> 
<!-- calendar code ends-->
html code
<div><input type="text" id="dt" name="requireddate" 
class="tcal" value="<?php echo $rec5['requireddate']; ?>" /> </div>

但是上面的代码不起作用。.它显示所有过去的日期

我正在使用这个日历http://www.softcomplex.com/products/tigra_calendar/

更新
刚刚注意到你不使用jquery UI..我的答案是基于这个..


答案(基于 jQuery UI 日期选择器

在您的示例中,以前的日期已停用。

它们会显示,但不可选择。

你想让它们不可见吗?

为此,您可以使用 beforeShowDay 事件,将类应用于旧时代并使用 css 隐藏它们

脚本

var today = new Date();
$("#dt").datepicker({
    minDate: today,
    beforeShowDay: function(cdate){
        var old = cdate < today;
        return [true, old?'old':''];
    }
});

CSS

td.old span{
    visibility:hidden;
}

http://jsfiddle.net/gaby/s2ZmQ/1/演示