Skip to content

Commit bb9f9fa

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
(cherry picked from commit a56aa86)
1 parent 86a09ae commit bb9f9fa

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
@@ -46,6 +46,11 @@ test('events', function() {
4646
simulate('keydown', {keyCode: $.simulate.VK_ESC});
4747
equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', date),
4848
'Callback selected date - esc');
49+
var dateStr = '02/04/2008';
50+
inp.val(dateStr).datepicker('show').
51+
simulate('keydown', {keyCode: $.simulate.VK_ENTER});
52+
equals(dateStr, selectedDate,
53+
'onSelect is called after enter keydown');
4954
// onChangeMonthYear
5055
inp.datepicker('option', {onChangeMonthYear: callback2, onSelect: null}).
5156
val('').datepicker('show');

ui/jquery.ui.datepicker.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -520,6 +520,13 @@ $.extend(Datepicker.prototype, {
520520
$.datepicker._currentClass + ')', inst.dpDiv);
521521
if (sel[0])
522522
$.datepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]);
523+
var onSelect = $.datepicker._get(inst, 'onSelect');
524+
if (onSelect) {
525+
var dateStr = $.datepicker._formatDate(inst);
526+
527+
// trigger custom callback
528+
onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]);
529+
}
523530
else
524531
$.datepicker._hideDatepicker();
525532
return false; // don't submit the form

0 commit comments

Comments
 (0)