Decision.
var self = this; var maxLength = []; $("[maxlength]").each(function () { maxLength.push(parseInt($(this).attr('maxlength'))); }); $('#title_book').keyup(function() { self.keyupListener($('#title_book'), 0); //$('#sub').enabled = self.tryLength(); }) $('#annot_book').keyup(function() { self.keyupListener($('#annot_book'), 1); }) $('#descr_book').keyup(function() { self.keyupListener($('#descr_book'), 2); }) this.keyupListener = function(elem, idx) { var curLength = $(elem).val().length; $(elem).val($(elem).val().substr(0, maxLength[idx])); console.log(parseInt(maxLength[idx])); var remaning = (parseInt(maxLength[idx])) - parseInt(curLength); if (remaning < 0) remaning = 0; $('#number_char' + idx).html(remaning + ' осталось символов'); $('#number_value' + idx).css('display','block'); $('#numberV' + idx).animate({'width': curLength+'%', }, 1); if (remaning < 10) { $('#number_char' + idx).addClass('warning'); } else { $('#number_char' + idx).removeClass('warning'); } return $(elem).attr('maxlength'); } this.tryLength = function() { return $('#title_book').val().length > 2 && $('#annot_book').val().length > 2; }