From d67709962e50d77dcf00aa49da491ce7c7efe203 Mon Sep 17 00:00:00 2001 From: Fridolin Somers Date: Tue, 25 Feb 2014 12:13:13 +0100 Subject: [PATCH] Bug 11563 - Class noEnterSubmit no longer functioning For some reason, even if an input as the class noEnterSubmit, the code found in staff-global.js for preventing submission when hitting the enter key is no longer triggered. This is because this class is added using JavaScript in $(document).ready() and the keypress event listerning is also set using $(document).ready(). This patch corrects by using JQuery live() with will set event listerning event for HTML generated with JavaScript. Alos sets noEnterSubmit to use the checkEnter(e) function, containing a more correct code. Also corrects a small bug, for IE, window.event must be used, not event alone (even if IE is not supported for intranet). Test plan : - Flush browser cache (Crtl+F5) to update js files - Go to patron creation : members/memberentrygen.tt - Type a text in all mandatory inputs - Type some caracters in a non mandatory input - Press Enter key => Without patch : the form is submitted => With patch : the form is not submitted - Try to set several lines in a textarea => It works (checks that in this case enter key is allowed) - Test other pages usign noEnterSubmit class : cataloguing/additem.tt course_reserves/course.tt members/mancredit.tt members/maninvoice.tt patron_lists/list.tt Signed-off-by: Kyle M Hall Signed-off-by: Jonathan Druart Signed-off-by: Christopher Brannon Signed-off-by: Katrin Fischer --- koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js b/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js index c97007f..2bc8424 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js +++ b/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js @@ -25,8 +25,8 @@ function _(s) { return s; } // dummy function for gettext return false; }); - $('.noEnterSubmit').keypress(function(e){ - if ( e.which == 13 ) return false; + $('.noEnterSubmit').live("keypress", function(e){ + return checkEnter(e); }); }); @@ -37,7 +37,7 @@ function checkEnter(e){ //e is event object passed from function invocation e = e; characterCode = e.which; //character code is contained in NN4's which property } else { - e = event; + e = window.event; characterCode = e.keyCode; //character code is contained in IE's keyCode property } -- 1.8.3.2