У меня есть страница продукта с несколькими текстовыми вводами и одним вводом текста. 3 текстовых ввода имеют максимальную длину 18, 1 текстовый ввод имеет максимальную длину 5, а 1 текстовое поле имеет максимальную длину 255. Как настроить счетчики символов для каждого элемента без написания нескольких функций?
I 'Мы установили базовую функцию, которая изменяет счетчик символов html со значения .form-input, но очевидно, что он применяется ко всем счетчикам. У меня проблемы с указанием его для каждого отдельного ввода и textarea.
<div class="form-field text-lines" data-product-attribute="input-text">
<label class="form-label form-label--inlineSmall" for="attribute_text_347">Text Line 1:</label>
<p id="text-info">Type exactly as you want the text to appear, including upper/lower case.</p>
<input class="form-input form-input--small" type="text" id="attribute_text_347" name="attribute[347]" maxlength="18">
<span class="characters-left">Characters Left: <span class="counter">18</span></span>
</div>
$(document).ready(function() {
let text_max = 18;
$('.counter').html(text_max);
$('.text-lines .form-input').keyup(function() {
let text_length = $('.text-lines .form-input').val().length;
let text_remaining = text_max - text_length;
$('.counter').html(text_remaining);
});
});
Я ожидаю обновления счетчика символов каждого ввода / textarea при вводе в этом конкретном input / texarea.