我使用的是jQuery Datepicker,我在jQuery中做了同樣的修改,但其中出了問題。
按照我的要求,所有的作業都很好,但是當我從2020年12月的開始日期中選擇日期時,所有的結束日期的日期都被禁用了。
而且這只發生在我選擇2020年12月的日期時。
。if (jQuery('#datetimepicker1'). length > 0) {
jQuery('#datetimepicker1').datetimepicker({
lang: 'ch',
timepicker: false,
format: 'd/m/Y',
formatDate: 'Y/m/d',
maxDate: 0,
onChangeDateTime: function(dp, $input) {
var from = $input.val().split("/")。
var f = new Date(from[2] 。from[1], from[0])。)
f.setDate(f.getDate() )。)
var datemin = f.getFullYear() "/"/span> f. getMonth() "/" f.getDate()。
var datestr= from[2] "/" f. getMonth() "/" from[0] 。
$("#datetimepicker2"/span>).datetimepicker({
lang: 'ch',
timepicker: false,
format: 'd/m/Y',
formatDate: 'Y/m/d',
changeMonth: f.getMonth()。
changeYear: f.getFullYear()。
minDate: new Date(datemin)。
startDate: datemin,
});
}
});
}
if (jQuery('#datetimepicker2').length> 0) {
jQuery('#datetimepicker2').datetimepicker({
lang: 'ch',
timepicker: false,
format: 'd/m/Y',
formatDate: 'Y/m/d',
maxDate: 0,
});
}
< link rel="styleheet" href="https: //cdnjs. cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.20/jquery.datetimepicker.css"/span> />
<script src="https://cdnjs. cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>/span>
<script src="https://cdnjs.cloudflare. com/ajax/libs/jquery-datetimepicker/2.5.20/jquery.datetimepicker.full.min.js"></script>/span>
< input id="datetimepicker1" type="text" placeholder="start date"/>
< input id="datetimepicker2" type="text" placeholder="End Date"/>
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
CodePudding
Javascript月份是基于0的,但你的輸入是基于1的,所以你需要轉換
var f = new Date(from[2] 。from[1]-1, from[0])。)
它失敗了,因為沒有第13個月,所以被 "混淆 "了。
由于你沒有使用日期本身,而是將其重新格式化為一個字串,你也需要在這些行中進行轉換:
由于你沒有使用日期本身,而是將其重新格式化為一個字串,你也需要在這些行中進行轉換。
var datemin=f. getFullYear() "/" (f.getMonth() 1) "/" f.getDate()
var datestr= from[2] "/" (f. getMonth() 1) "/" from[0] 。
if (jQuery('#datetimepicker1'). length > 0) {
jQuery('#datetimepicker1').datetimepicker({
lang: 'ch',
timepicker: false,
format: 'd/m/Y',
formatDate: 'Y/m/d',
maxDate: 0,
onChangeDateTime: function(dp, $input) {
var from = $input.val().split("/")。
var f = new Date(from[2] 。from[1]-1, from[0])。)
f.setDate(f.getDate() )。
var datemin = f.getFullYear() "/" (f. getMonth() 1) "/"/span> f.getDate()。
var datestr= from[2] "/"/span> (f. getMonth() 1) "/" from[0] 。
$("#datetimepicker2"/span>).datetimepicker({
lang: 'ch',
timepicker: false,
format: 'd/m/Y',
formatDate: 'Y/m/d',
changeMonth: f.getMonth()。
changeYear: f.getFullYear()。
minDate: new Date(datemin)。
startDate: datemin,
});
}
});
}
if (jQuery('#datetimepicker2').length> 0) {
jQuery('#datetimepicker2').datetimepicker({
lang: 'ch',
timepicker: false,
format: 'd/m/Y',
formatDate: 'Y/m/d',
maxDate: 0,
});
}
< link rel="styleheet" href="https: //cdnjs. cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.20/jquery.datetimepicker.css"/span> />
<script src="https://cdnjs. cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>/span>
<script src="https://cdnjs.cloudflare. com/ajax/libs/jquery-datetimepicker/2.5.20/jquery.datetimepicker.full.min.js"></script>/span>
< input id="datetimepicker1" type="text" placeholder="start date"/>
< input id="datetimepicker2" type="text" placeholder="End Date"/>
<iframe name="sif2" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/331844.html
標籤:
