From ba142818b345e37721b3d9373e8dc1685e9156df Mon Sep 17 00:00:00 2001 From: Deven Bansod Date: Sun, 19 Jul 2015 02:42:17 +0530 Subject: [PATCH] Handle Ctrl/Alt + Enter form submits Signed-off-by: Deven Bansod --- js/functions.js | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/js/functions.js b/js/functions.js index 01b2e649ec..bf6716e2fa 100644 --- a/js/functions.js +++ b/js/functions.js @@ -4671,3 +4671,26 @@ function isStorageSupported(type) } return false; } + +/** + * Unbind all event handlers before tearing down a page + */ +AJAX.registerTeardown('functions.js', function(){ + $(document).off('keydown', 'form input, form textarea, form select'); +}); + +AJAX.registerOnload('functions.js', function () { + /** + * Handle 'Ctrl/Alt + Enter' form submits + */ + $('form input, form textarea, form select').on('keydown', function(e){ + if((e.ctrlKey && e.which == 13) || (e.altKey && e.which == 13)) { + $form = $(this).closest('form'); + if (! $form.find('input[type="submit"]') || + ! $form.find('input[type="submit"]').click() + ) { + $form.submit(); + } + } + }); +});