jQuery UI Datepicker - Désactiver les jours
Est-il un moyen (facile) pour définir le jQuery UI Datepicker interdire la sélection de certains, prédéterminé jours?
J'ai été en mesure d'obtenir cette approche de travail, cependant, il produit une erreur nulle, ce qui l'empêche de s'afficher dans IE.
'natDays[...].0' a la valeur null ou n'est pas un objet
Merci d'avance!
Mise à JOUR: Pourrait aider si j'ai inclus un peu de code, non? De toute façon, la plupart de ceci a été pris directement à partir de ladite fil:
natDays = [
[7, 23], [7, 24], [8, 13], [8, 14],
];
function nationalDays(date) {
for (i = 0; i < natDays.length; i++) {
if (date.getMonth() == natDays[i][0] - 1
&& date.getDate() == natDays[i][1]) {
return [false, natDays[i][2] + '_day'];
}
}
return [true, ''];
}
function noWeekendsOrHolidays(date) {
var noWeekend = $.datepicker.noWeekends(date);
if (noWeekend[0]) {
return nationalDays(date);
} else {
return noWeekend;
}
}
$(function() {
$("#datepicker").datepicker({
inline: true,
minDate: new Date(2009, 6, 6),
maxDate: new Date(2009, 7, 14),
numberOfMonths: 2,
hideIfNoPrevNext: true,
beforeShowDay: $.datepicker.noWeekends,
altField: '#alternate',
});
});
Merci encore!
- pourriez-vous collez votre code de ce que vous avez c'est l'origine de l'erreur
- Besoin d'un exemple de code d'au moins la ligne en question...
Vous devez vous connecter pour publier un commentaire.
Avez-vous essayé de déclarer natDays correctement avec le 'var' mot-clé dans l'avant?
Aussi - vous avez une virgule supplémentaire à la fin de votre natDays définition.
natDays[i][2] ne fonctionne pas comme vos tableaux de seulement 2 articles en eux - essayez juste de "
En outre, vous devrez définir votre beforeShowDay nom de la fonction correctement - ne regarde pas comme il est encore d'appeler votre fonction personnalisée
Ici est une façon de désactiver les dates précises d'être sélectionné:
Source: jQuery - Datepicker - Désactiver les Dates
Vous pouvez utiliser le
beforeShowDay
option. J'avais besoin de désactiver n'importe quel jour après le 28 du mois. Voici mon code.Ici plus d'informations à ce sujet: http://api.jqueryui.com/datepicker/#option-beforeShowDay
La date de la variable passée dans l'beforeShowDay de rappel est un objet date JavaScript, de sorte qu'il peut être formaté à l'aide de diverses bibliothèques, un horodatage peut être récupéré en utilisant la date.getTime(), etc.
sera
Le problème avec IE est le plus probablement sur la ligne suivante:
Essayez de supprimer la virgule symbole et cela devrait fonctionner.
Démo Live: http://jsfiddle.net/vfod0krm/