web-dev-qa-db-fra.com

jQuery DatePicker Min Max dates

J'ai le programme de configuration du sélecteur de date jQuery et je travaille, mais j'aimerais de l'aide pour configurer les options minDate et maxDate. Mon code actuel est ci-dessous (sans ces options). Comment définir minDate 3 mois avant defaultDate et 28 jours après defaultDate?

var expdisp = $("#expdisp").attr("value");

$("#expirydate" ).datepicker({
    showOn: "button",
    buttonImage: "images/calendar.gif",
    buttonImageOnly: true,
    dateFormat: "dd/mm/yy",
    defaultDate: expdisp,
    showOtherMonths: true,
    selectOtherMonths: true,
    changeMonth: true,
    changeYear: true,
});
9
Rob
$(function() {

    $( "#datepicker" ).datepicker({ 
        changeYear: true,
        minDate: '-3M',
        maxDate: '+28D',
    });
});

JSFiddle Demo

METTRE À JOUR

Vous pouvez calculer les dates maximales et minimales valides du tour à partir de la date par défaut, puis l’affecter au sélecteur de date.

var expdisp = $("#expdisp").attr("value");

$("#expirydate" ).datepicker({
    showOn: "button",
    buttonImage: "images/calendar.gif",
    buttonImageOnly: true,
    dateFormat: "dd/mm/yy",
    defaultDate: expdisp,
    showOtherMonths: true,
    selectOtherMonths: true,
    changeMonth: true,
    changeYear: true,

    minDate: '-3M',
    maxDate: '+28D',
});

Mise à jour de la démonstration

14
MuhammadHani

maxDate: - Définit la date maximum pouvant être sélectionnée. Accepte un objet de date ou un nombre relatif. Par exemple: +7 ou une chaîne telle que + 6m.

minDate: - Définit la date minimale pouvant être sélectionnée. Accepte un nombre, un objet de date ou une chaîne.

$(document).ready(function() {
  $("#date").datepicker({
      minDate: -3,
      maxDate: "1w"
  });

});

Référez-vous à: - définir la date minimale et maximale sur jquery datepicker

2
ramsurya

Vous pouvez également utiliser des plages de dates spécifiques. J'ai ajouté une date de début minimale avec un maximum de 14D. N'oubliez pas de rester compatible avec votre format de date et utilisez "/" au lieu de "-" entre MM/JJ/AAAA.

$('#Date').datepicker({
  changeMonth: true,
  minDate: '10/19/2016',
  maxDate: '+14D',
});

0
Jason

Vous pourriez essayer:

var expdisp = $("#expdisp").attr("value");

$("#expirydate" ).datepicker({
    showOn: "button",
    buttonImage: "images/calendar.gif",
    buttonImageOnly: true,
    dateFormat: "dd/mm/yy",
    defaultDate: expdisp,
    showOtherMonths: true,
    selectOtherMonths: true,
    changeMonth: true,
    changeYear: true,

    minDate: -3M,
    maxDate: +28D
});
0
SteveW
$(document).ready(function () {
    $('input[id$=tbDate]').datepicker({   
        dateFormat: 'dd-mm-yy',
         minDate: '-0D',
         maxDate: '+28D',
    });
});
0
Vinesh Winslet