在日期选择器中禁用过去的日期
Disable dates in the past in datepicker
我在这里实现了代码,禁用“开始日期”日期选择器中当前日期的先前日期,并禁用“结束日期”日期选择器中所选“开始日期”的先前日期。它工作得很好,但突然间它没有禁用“开始日期”datepicker 中当前日期的先前日期。
查看:
<div class="form-group col-md-4">
<label for="pwd">Start Date</label>
<input type="date" class="form-control" id='Sdate' name='Sdate' min="" value="">
<div class="alert-danger"><?php echo form_error('Sdate'); ?></div>
</div>
<div class="form-group col-md-4">
<label for="pwd">End Date</label>
<input type="date" class="form-control" id='Edate' name='Edate' value="<?php echo set_value('Edate'); ?>">
<div class="alert-danger"><?php echo form_error('Edate'); ?></div>
</div>
脚本:
$(document).ready(function(){
var today = new Date();
var sdate = today.getFullYear()+'-'+(today.getMonth()+1)+'-'+(today.getDate() < 10 ? '0'+today.getDate() : today.getDate());
$('#Sdate').prop('min', sdate);
$('#Sdate').on('change', function(){
$('#Edate').prop('min', $(this).val() );
});
});
你的变量 sdate
returns '2021-1-11' 但应该是 '2021-01-11'
只需稍微更改您的代码,为 <10
的所有月份添加前导 0
$(document).ready(function() {
const options1 = {
year: 'numeric',
month: 'numeric',
day: 'numeric'
};
var today = new Date();
y = today.getFullYear()
m = today.getMonth() + 1
m = m < 10 ? '0' + m : m;
d = today.getDate()
d = d < 10 ? '0' + d : d;
sdate = y + '-' + m + '-' + d
$('#Sdate').prop('min', sdate);
$('#Sdate').on('change', function() {
$('#Edate').prop('min', $(this).val());
});
});
在此处查看 working jsfiddle,现在禁用过去的日期
我在这里实现了代码,禁用“开始日期”日期选择器中当前日期的先前日期,并禁用“结束日期”日期选择器中所选“开始日期”的先前日期。它工作得很好,但突然间它没有禁用“开始日期”datepicker 中当前日期的先前日期。
查看:
<div class="form-group col-md-4">
<label for="pwd">Start Date</label>
<input type="date" class="form-control" id='Sdate' name='Sdate' min="" value="">
<div class="alert-danger"><?php echo form_error('Sdate'); ?></div>
</div>
<div class="form-group col-md-4">
<label for="pwd">End Date</label>
<input type="date" class="form-control" id='Edate' name='Edate' value="<?php echo set_value('Edate'); ?>">
<div class="alert-danger"><?php echo form_error('Edate'); ?></div>
</div>
脚本:
$(document).ready(function(){
var today = new Date();
var sdate = today.getFullYear()+'-'+(today.getMonth()+1)+'-'+(today.getDate() < 10 ? '0'+today.getDate() : today.getDate());
$('#Sdate').prop('min', sdate);
$('#Sdate').on('change', function(){
$('#Edate').prop('min', $(this).val() );
});
});
你的变量 sdate
returns '2021-1-11' 但应该是 '2021-01-11'
只需稍微更改您的代码,为 <10
的所有月份添加前导0
$(document).ready(function() {
const options1 = {
year: 'numeric',
month: 'numeric',
day: 'numeric'
};
var today = new Date();
y = today.getFullYear()
m = today.getMonth() + 1
m = m < 10 ? '0' + m : m;
d = today.getDate()
d = d < 10 ? '0' + d : d;
sdate = y + '-' + m + '-' + d
$('#Sdate').prop('min', sdate);
$('#Sdate').on('change', function() {
$('#Edate').prop('min', $(this).val());
});
});
在此处查看 working jsfiddle,现在禁用过去的日期