diff --git a/resources/js/makegrid.ts b/resources/js/makegrid.ts index 028fa58bad..6debdc3e20 100644 --- a/resources/js/makegrid.ts +++ b/resources/js/makegrid.ts @@ -1191,7 +1191,10 @@ const makeGrid = function (t, enableResize = undefined, enableReorder = undefine firstDay: window.firstDayOfCalendar, }); - $inputField.on('keyup', function (e) { + $inputField.off('keydown.gridEditDateTime keyup.gridEditDateTime'); + $(g.cEdit).off('keydown.gridEditDateTime'); + + $inputField.on('keydown.gridEditDateTime', function (e) { if (e.which === 13) { // post on pressing "Enter" e.preventDefault(); @@ -1202,6 +1205,15 @@ const makeGrid = function (t, enableResize = undefined, enableReorder = undefine } }); + // Catch Enter when focus is in the datepicker UI (inside cEdit) + $(g.cEdit).on('keydown.gridEditDateTime', function (e) { + if (e.which === 13 && ! $(e.target).is('.edit_box')) { + e.preventDefault(); + e.stopPropagation(); + g.saveOrPostEditedCell(); + } + }); + $inputField.datepicker('show'); toggleDatepickerIfInvalid($td, $inputField);