2010-11-16 4 views
0
$('#Date_Of_Reservation').datepicker({showAnim: 'fadeIn',minDate: twoBussinessDaysToDays(),constrainInput: true}); 

Ma fonction fonctionne correctement. Le calendrier graphique fonctionne bien aussi - en grisonnant les dates non sélectionnables. Le problème est la validation. Pendant que le champ minDate fonctionne si l'utilisateur tape la date manuellement dans le champ de texte, il peut entrer des dates antérieures au minDate. Aucune validation en ce qui concerne le minDate se produit. Y a-t-il une solution élégante à ce problème?JQuery UI Datepicker - entrée restrictive sur le champ de texte en ce qui concerne l'option minDate?

Éditer: Cela fonctionne très bien quand j'appuie sur enter après avoir placé quelque chose dans le champ de texte. Mais lorsque je clique ou que je clique ailleurs, la validation n'est pas déclenchée.

Répondre

1
  1. Utilisez le plugin validator pour assurer l'entrée valide
  2. Ajouter une méthode de gamme custom date

la méthode dans votre cas serait:

$.validator.addMethod("dateRange", function(value, element) { 
    // put your own logic here something like this 
    return new Date(value) > twoBussinessDaysToDays(); 
}, 
"Please enter a valid date" 
); 

Et dire jquery pour valider le formulaire :

$('#myForm').validate({ 
    rules: { 
     Date_Of_Reservation: { dateRange: true } 
    } 
});