
在我当前的登录会话中,我有
var start_date = "<?php $this->session->userdata('start_date'); ?>";
var end_date = "<?php $this->session->userdata('end_date'); ?>";例如:
$start_date = 2019-04-01
$end_date = 2020-03-31在“我的起始日期”选择框中,选择“期外日期”,我只想选择当前期次日期之间的日期。
我的代码:
<div class="row">
<div class="col-6">
<div class="form-group">
<label >From Date</label>
<input type="text" data-provide="datepicker" class="form-control" id="from_date_bk"
name="from_date_bk" placeholder="DD/MM/YYYY" data-date-end-date="0d">
</div>
</div>
<div class="col-6">
<div class="form-group">
<label >To Date</label>
<input type="text" data-provide="datepicker" class="form-control" id="to_date_bk"
name="to_date_bk" data-date-end-date="0d">
</div>
</div>
</div>
<script>
$(document).ready(function() {
var start_date = "<?php $this->session->userdata('start_date'); ?>";
var end_date = "<?php $this->session->userdata('end_date'); ?>";
var date = new Date();
var today = new Date(date.getFullYear(), date.getMonth(), date.getDate());
$('#from_date_bk').datepicker({
uiLibrary: 'bootstrap4',
format:'dd/mm/yyyy',
todayHighlight: true,
autoclose: true,
onClose: function( selectedDate )
{
$( "#to_date_bk" ).datepicker( "option", "minDate", selectedDate );
}
});
$('#to_date_bk').datepicker({
uiLibrary: 'bootstrap4',
format:'dd/mm/yyyy',
todayHighlight: true,
autoclose: true,
onClose: function( selectedDate )
{
$( "#from_date_bk" ).datepicker( "option", "maxDate", selectedDate );
}
});
$('#to_date_bk').datepicker( 'setDate', today );
});
</script> 如何选择介于当前期次日期之间的日期。
发布于 2019-09-07 15:22:26
您可以像这样使用minDate和maxDate
minDate: moment("01/04/2019"),
maxDate: moment("31/03/2020"),发布于 2019-09-07 17:13:23
如果您不介意在输入上使用yy/mm/dd日期格式,您可以尝试如下所示:
<script>
<?php
$start_date = $this->session->userdata('start_date'); // example output : '2019-04-01'
$end_date = $this->session->userdata('end_date'); // example output : '2020-03-31'
?>
$(document).ready(function() {
var start_date = "<?php echo date("Y/m/d", strtotime($start_date)); ?>";
var end_date = "<?php echo date("Y/m/d", strtotime($end_date)); ?>";
var date = new Date();
var today = date.getFullYear() + '/' + (date.getMonth() + 1) + '/' + date.getDate(); // month is 0 based index, so it have to be +1 to get current month, example output : '2019-09-07'
$('#from_date_bk').datepicker({
uiLibrary: 'bootstrap4',
dateFormat: 'yy/mm/dd',
todayHighlight: true,
autoclose: true,
minDate: start_date,
maxDate: end_date,
onClose: function(selectedDate) {
if (selectedDate) {
$("#to_date_bk").datepicker("option", "minDate", selectedDate);
}
}
});
$('#to_date_bk').datepicker({
uiLibrary: 'bootstrap4',
dateFormat: 'yy/mm/dd',
todayHighlight: true,
autoclose: true,
minDate: start_date,
maxDate: end_date,
onClose: function(selectedDate) {
if (selectedDate) {
$("#from_date_bk").datepicker("option", "maxDate", selectedDate);
}
}
});
$('#to_date_bk').datepicker('setDate', today);
});
</script>这将设置:
$start_date作为起始范围,默认情况下$end_date作为结束范围。#from_date_bk输入:填充#to_date_bk后,范围从$start_date到#to_date_bk。#to_date_bk输入:填充#from_date_bk后从#from_date_bk到$end_date的范围。我已经在onClose中添加了if条件,所以如果选择的日期为空,它不会设置相反的日期选择器规则。
https://stackoverflow.com/questions/57831448
复制相似问题