Skip to content

Commit a56aa86

Browse files
marcneuwirthgnarf
authored andcommitted
Datepicker: Added onSelect.apply() call to _doKeyDown method when enter button pushed if onSelect is defined. Fixed #7124 - Datepicker: onSelect does not fire when enter button is pushed
1 parent 5c34cea commit a56aa86

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

tests/unit/datepicker/datepicker_events.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,11 @@ test('events', function() {
4141
simulate('keydown', {keyCode: $.simulate.VK_ESC});
4242
equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', date),
4343
'Callback selected date - esc');
44+
var dateStr = '02/04/2008';
45+
inp.val(dateStr).datepicker('show').
46+
simulate('keydown', {keyCode: $.simulate.VK_ENTER});
47+
equals(dateStr, selectedDate,
48+
'onSelect is called after enter keydown');
4449
// onChangeMonthYear
4550
inp.datepicker('option', {onChangeMonthYear: callback2, onSelect: null}).
4651
val('').datepicker('show');

ui/jquery.ui.datepicker.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -529,6 +529,13 @@ $.extend(Datepicker.prototype, {
529529
$.datepicker._currentClass + ')', inst.dpDiv);
530530
if (sel[0])
531531
$.datepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]);
532+
var onSelect = $.datepicker._get(inst, 'onSelect');
533+
if (onSelect) {
534+
var dateStr = $.datepicker._formatDate(inst);
535+
536+
// trigger custom callback
537+
onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]);
538+
}
532539
else
533540
$.datepicker._hideDatepicker();
534541
return false; // don't submit the form

0 commit comments

Comments
 (0)