diff --git a/app/assets/javascripts/delta_input.js b/app/assets/javascripts/delta_input.js index 0ae7f4a5..d0da30d8 100644 --- a/app/assets/javascripts/delta_input.js +++ b/app/assets/javascripts/delta_input.js @@ -19,7 +19,7 @@ function data_delta_update(el, direction) { var delta = $(el).data('delta'); var granularity = $(el).data('granularity'); - var val = $(el).val(); + var val = $(el).val().replace(',', '.'); var oldval = $.isNumeric(val) ? Number(val) : 0; var newval = oldval + delta*direction; @@ -31,10 +31,11 @@ function data_delta_update(el, direction) { $('button[data-increment='+id+']').attr('disabled', newval>=max ? 'disabled' : null); // warn when what was entered is not a number - $(el).toggleClass('error', val!='' && val!='.' && (!$.isNumeric(val) || val < 0)); + const erroneousValue = val!='' && val!='.' && (!$.isNumeric(val) || val < 0) + $(el).toggleClass('error', erroneousValue); // update field, unless the user is typing - if (!$(el).is(':focus')) { + if (!$(el).is(':focus') && !erroneousValue) { $(el).val(round_float(newval, granularity)); $(el).trigger('changed'); }