Attachés à Datepicker de jQuery Flou de l'Événement
Je travaille sur un plugin jQuery pour une utilisation avec des zones de texte et je voudrais qu'il fonctionne avec jQueryUI widgets qui rendent l'utilisation de zones de texte, telles que le datepicker. C'est me causer des problèmes, car il semble que le flou de l'événement sur le datepicker est jeté en avant de la valeur est en fait défini.
Une solution de contournement que j'ai utilisé est de définir un délai d'attente avant l'exécution de mon code afin de permettre à l'datepickers valeur à régler. Voir code ci-dessous:
$(this).blur(function() {
//$(this).val() == ""
var elem = $(this);
setTimeout(function() {
//elem.val() != ""
},100);
});
Je ne suis pas sûr que cette solution est la meilleure solution pour le problème, ou même si elle le sera toujours. Si je définissez le délai de 10 millisecondes au lieu de 100, il ne fonctionne pas - je suis inquiet si le code est lent à exécuter pour quelque raison que ce soit 100 ne peut pas toujours suffire.
Quelqu'un peut penser à une meilleure solution à ce problème?
Vous devez vous connecter pour publier un commentaire.
À la fin, ma solution a été de façon dynamique crochet dans la
onClose
cas si la zone de texte en question est utilisé par un datepicker (en vérifiant l'hasDatepicker
classe). Le problème avec ceci est que vous ne pouvez pas lier à l'événement comme vous le feriez normalement comme le datepicker ne peut avoir une fonction attachée à des événements spécifiques. Pour contourner ce problème j'ai vérifier si il y a une fonction déjà fixé, et si oui, appelez après mon code:Il y a plusieurs événements dans datepicker vous pouvez attacher dans
onSelect
ouonClose
etthis
en eux est l'entrée qui est le datepicker sélecteur .Vous pouvez utiliser le datepicker
ui
argument pour obtenir la valeur aussiC'est plus simple de le faire: