Obwohl ich weiß, dass dies bereits akzeptiert wurde, ist hier meine erweiterte Lösung, die auf Samy Zines Idee basiert . Dies verwendete jQuery 1.6.3 und jQuery UI 1.8.16 und funktionierte für mich in Firefox 6.
$('.ui-datepicker-current').live('click', function() {
var associatedInputSelector = $(this).attr('onclick').replace(/^.*'(#[^']+)'.*/gi, '$1');
var $associatedInput = $(associatedInputSelector).datepicker("setDate", new Date());
$associatedInput.datepicker("hide");
});
Sie können auch wünschen blur()
die $associatedInput
und Fokus auf der nächsten Eingabe / wählen in Ihrer Seite, aber das ist nicht trivial allgemein zu tun, oder ist implementierungsspezifisch.
Als Beispiel habe ich dies auf einer Seite getan, an der ich an den verwendeten Tabellen für das Layout gearbeitet habe (fang nicht damit an, ich weiß, dass das eine schlechte Praxis ist!):
$associatedInput.closest('tr').next('tr').find('input,select').first().focus();