生日文本字段的日期选择器

时间:2018-07-27 03:57:32

标签: javascript jquery

我在表单上创建了一个带有生日标签和文本框的日期选择器, 现在我的问题是,有没有一种方法可以防止用户选择当前 例如,用户不能选择今天的日期,明天或昨天作为他的生日。希望你能帮助我,谢谢:)

这是我的示例代码:

<link href="https://cdn.jsdelivr.net/npm/gijgo@1.9.6/css/gijgo.min.css" rel="stylesheet" type="text/css" />
 <script src="https://cdn.jsdelivr.net/npm/gijgo@1.9.6/js/gijgo.min.js" type="text/javascript"></script>

<div class="md-form">
 <input type="text" id="datepicker1" class="form-control " placeholder="Birthday" style="margin-top:-30px" name="date1" required>

</div>

这是我的示例javascript:

<script>
$('#datepicker1').datepicker({
   showOtherMonths: true
    });
</script>

我知道这还不够,我是javascript和jquery的初学者,但希望您能为我提供帮助。我正在使用Bootstrap jQuery DatePicker材质设计

3 个答案:

答案 0 :(得分:3)

jQuery datepicker具有一个maxDate选项,您可以设置。

如果您传递一个数字,它将把最大日期设置为从今天起的个数字。

不能选择今天,也不能选择以下日期:

$('#datepicker1').datepicker({
    showOtherMonths: true,
    maxDate: -1   //The maximum date is 1 day ago
});

不能选择昨天,也不能选择以下日期:

$('#datepicker1').datepicker({
    showOtherMonths: true,
    maxDate: -2   //The maximum date is 2 days ago
});

不能选择过去一年内的任何日期,也不能选择以下日期之后的任何日期:

$('#datepicker1').datepicker({
    showOtherMonths: true,
    maxDate: '-1y' //The maximum date is 1 year ago
});

答案 1 :(得分:1)

您可以将maxDate用于此目的,例如:

maxDate: '-2d'  // here d is the no of days ago, you can pass any no of days that you want to restrict

例如:

$(function() {
    $( "#datepicker" ).datepicker({
        dateFormat: "dd/mm/yy",
        maxDate: '-2d'
    });
});

Working Fiddle

答案 2 :(得分:1)

在您的javascript中使用它

$('.datepicker').datepicker({
format: 'mm/dd/yyyy',
startDate: '-3d'
});

使用startDate根据您的需要更改值,此处-3表示3天前,“ d”基本上表示天

startDate: '-3d'