[英]How can get year from dropdown and prepare date then set startdate and end date in bootstrap daterange
I have a form, in this form I have one dropdown
to select year
and text box
for datepicker
. 我有一个表单,在这个表单中,我有一个
dropdown
选择datepicker
year
和text box
。 I am using bootstrap datepicker
. 我正在使用
bootstrap datepicker
。
What I need is, If I select a year from dropdown
. 我需要的是,如果我从
dropdown
选择年份。 I need to set startDate
and endDate
in datepicker. 我需要在datepicker中设置
startDate
和endDate
。 startDate
+ 3 is endDate
. startDate
+ 3是endDate
。
Eg: If I select 2019 from dropdown. 例如:如果我从下拉列表中选择2019。 Datepicker calendar need to start with jan 2019 and end with dec 2022.
Datepicker日历需要从2019年1月开始,到2022年12月结束。
Html HTML
<div class="col-md-6">
<div class="form-group {{ $errors->has('summerSeasonYear') ? ' has-error' : '' }}">
<label>@lang('openingClosingSeason.summerSeasonChooseSeasonLabel') <span class="required">*</span></label>
<select class="form-control" name="summerSeasonYear" id="summerSeasonYear">
<option value="0">@lang('openingClosingSeason.summerSeasonChooseSeasonSelect')</option>
<option value="2017" @if(old('summerSeasonYear') == '2017') selected="selected" @endif>2017</option>
<option value="2018" @if(old('summerSeasonYear') == '2018') selected="selected" @endif>2018</option>
<option value="2019" @if(old('summerSeasonYear') == '2019') selected="selected" @endif>2019</option>
</select>
</div>
</div>
<div class="col-md-6">
<div class="form-group {{ $errors->has('earliest_summer_open') ? ' has-error' : '' }}">
<label for="earliest_summer_open">@lang('openingClosingSeason.summerSeasonEarliestOpen') <span class="required">*</span></label>
<input type="text" class="form-control" id="earliest_summer_open" name="earliest_summer_open" placeholder="@lang('openingClosingSeason.summerSeasonEarliestOpenPlaceholder')" data-date-format="dd.mm.yy" readonly="true" value="{{old('earliest_summer_open')}}">
</div>
</div>
Script 脚本
var start = '';
var end = '';
setSummerYear(null, null);
$('#summerSeasonYear').on('change', function(){
var summerSeasonYear = $("#summerSeasonYear").val();
$( "#summerSeasonYear" ).attr( "data-summerYear", summerSeasonYear );
start = new Date();
end = new Date(new Date().setYear(start.getFullYear()+1));
setSummerYear(start, end)
});
function setSummerYear(start, end)
{
$('#earliest_summer_open').datepicker({
autoclose: true,
todayHighlight: true,
startDate : start,
endDate : end
});
}
You need to set the dateFormat of the jQuery UI (bootstrap uses jQuery!) datepicker to the format you use first upon initialization. 您需要将jQuery UI(引导程序使用jQuery!)datepicker的dateFormat设置为初始化时首先使用的格式。 I think you did so already on the data-data-format attribute, so that is ok... Do not initialize the datepicker on demand but do so on document.ready.
我认为您已经在data-data-format属性上执行了此操作,所以没关系...不要按需初始化datepicker,而是对document.ready进行初始化。
Then whenever necessary, set the date of the picker by putting the date into the input, using .val(date.getDate() + (start.getMonth() + 1) + "-" + start.getFullYear());
然后,在必要时,使用
.val(date.getDate() + (start.getMonth() + 1) + "-" + start.getFullYear());
将日期放入输入中,以设置选择器的日期.val(date.getDate() + (start.getMonth() + 1) + "-" + start.getFullYear());
. 。 That is all there is to it;
这就是全部。 datepicker will handle the change itself when the user decides to click in the input.
当用户决定单击输入时,日期选择器将自行处理更改。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.