textarea
и у него по макету максимальная длина в 360 символов, как динамически выводить в поле сколько символов вбито с помощью нативного JavaScript? Скрин для наглядностиconst ta = document.querySelector(...) // textarea
const counter = document.querySelector(...) // счётчик
ta.addEventListener('input', onInput)
funcion onInput(evt) {
const length = evt.target.value.length
counter.textContent = length
}
<div class="container">
<textarea name="" id="" cols="30" rows="10"></textarea>
<div class="counter">
<span class="current">0</span> /
<span class="total">360</span>
</div>
</div>
.container {
position: relative;
width: max-content;
}
.counter {
position: absolute;
bottom: 5px;
right: 5px;
}
const textarea = document.querySelector('textarea');
const counter = document.querySelector('.current');
const maxlength = 360;
textarea.addEventListener('input', onInput)
function onInput(event) {
event.target.value = event.target.value.substr(0, maxlength); // обрезаем текст до 360 символов
const length = event.target.value.length;
counter.textContent = length;
}
const letter_text_textarea = document.getElementById('letter_text');
const currentCounter = document.getElementById('currentCounter');
const maxCounter = document.getElementById('maxCounter').textContent;
letter_text_textarea.addEventListener('input', onInput)
function onInput(event) {
event.target.value = event.target.value.substr(0, maxCounter);
const length = event.target.value.length;
currentCounter.textContent = length;
}
<textarea maxlength="10" resize="none" name="tweet" id="textbox" class="form-control" rows="10" cols="60"></textarea>
<span id="char_count"></span>
<script>
var count_chars = document.getElementById("textbox").maxLength;
let textArea = document.getElementById("textbox");
let characterCounter = document.getElementById("char_count");
characterCounter.textContent ="Осталось: " + count_chars + " из " + count_chars;
const maxNumOfChars = count_chars;
const countCharacters = () => {
let numOfEnteredChars = textArea.value.length;
let counter = maxNumOfChars - numOfEnteredChars;
characterCounter.textContent ="Осталось: " + counter + " из" + count_chars;
};
textArea.addEventListener("input", countCharacters);
</script>