Je veux désactiver toutes les dates futures après aujourd'hui dans Jquery Ui Datepicker
Voici le démo :
Code:
$( "#start_date" ).datepicker(
{
maxDate: '0',
beforeShow : function()
{
jQuery( this ).datepicker('option','maxDate', jQuery('#end_date').val() );
},
altFormat: "dd/mm/yy",
dateFormat: 'dd/mm/yy'
}
);
$( "#end_date" ).datepicker(
{
maxDate: '0',
beforeShow : function()
{
jQuery( this ).datepicker('option','minDate', jQuery('#start_date').val() );
} ,
altFormat: "dd/mm/yy",
dateFormat: 'dd/mm/yy'
}
);
Essaye ça
$(function() {
$( "#datepicker" ).datepicker({ maxDate: new Date() });
});
Ou vous pouvez y parvenir en utilisant ce qui suit:
$(function() {
$( "#datepicker" ).datepicker({ maxDate: 0 });
});
Dans mon cas, j'ai attribué cet attribut à la balise input
data-date-start-date="0d"
data-date-end-date="0d"
Vous pouvez simplement faire ceci
$(function() {
$( "#datepicker" ).datepicker({ maxDate: new Date });
});
FYI: lors de la vérification de documentation , a constaté qu’il accepte également les valeurs numériques.
Nombre: Nombre de jours à compter d'aujourd'hui. Par exemple, 2 représente deux jours à partir d'aujourd'hui et -1 représente hier.
donc 0
représente aujourd'hui. Par conséquent, vous pouvez le faire aussi
$( "#datepicker" ).datepicker({ maxDate: 0 });
Cela a fonctionné pour moi endDate: "today"
$('#datepicker').datepicker({
format: "dd/mm/yyyy",
autoclose: true,
orientation: "top",
endDate: "today"
});
Changer maxDate en date du jour
maxDate: new Date()
Il définira la date actuelle comme valeur maximale.
Si vous ajoutez Dtpicker, utilisez le code suivant
$('#enddate').appendDtpicker({
"dateOnly": true,
"dateFormat": "YYYY-MM-DD",
"closeOnSelected": true,
maxDate: new Date()
});
datepicker n'a pas une option maxDate.J'ai utilisé cette option endDate.Il a bien fonctionné.
> $('.demo-calendar-default').datepicker({
> autoHide: true,
> zIndex: 2048,
> format: 'dd/mm/yyyy',
> endDate: new Date()
> });