2017-03-13 1 views
0

Je dois valider mon datepicker + DateTimePicker pour ces situations:Valider JQuery UI Datepicker + TimePicker Addon

  • selfinput sur maxdaterange

  • selfinput sur mindaterange

  • entrée invalide pour ne pas exister date (comme 29.02.2017)

  • entrée invalide (comme 214124.123123.201 7 (JJ.MM.AAAA))

Mes JS:

var input = $('<input placeholder="DD.MM.JJJJ HH:MM" type="text">') 

input.appendTo($(element)); 

//DATETIMEPICKER ALLGEMEIN 
input.datetimepicker({ 
    monthNames: ['Januar', 'Februar', 'M&auml;rz', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'], 
    monthNamesShort: ['Januar', 'Februar', 'M&auml;rz', 'April', 'Mai', 'Juni', 'Juli', 'August', 'Septem.', 'Oktober', 'Novem.', 'Dezem.'], 
    dayNames: ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'], 
    dayNamesMin: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'], 
    dateFormat: 'dd.mm.yy', 
    changeMonth: false, 
    changeYear: true, 
    yearRange: '2015:2019', 
    showButtonPanel: true, 
    timeText: 'Zeit', 
    hourText: 'Stunde', 
    minuteText: 'Minute', 
    secondText: 'Sekunde', 
    ampm: false, 
    controlType: 'select', 
    oneLine: true, 
    timeFormat: 'H:mm', 
    closeText: "Fertig", 
    currentText: "Jetzt" 
}); 

EDIT: Si la date est invalide, j'ai besoin d'une alerte (Par exemple: "Entrée non valide")

Répondre

0

Je l'ai eu btw, j'ai utilisé la librairie moment.js et ajouté ce code, ça empêche tout ce que je voulais sans "alerte" mais ça marche bien et c'est facile à utiliser!

var previousDate; 

input.focus(function() { 
    previousDate = $(this).val();; 
}); 
input.blur(function() { 
    var newDate = $(this).val(); 
    if (!moment(newDate, 'DD/MM/YYYY', true).isValid()) { 
     $(this).val(previousDate); 
     console.log("Error"); 
    }