I have a form on my website with several different textareas.
HTML/PHP
foreach ($bla as $blabla) {
.... other php-code (not relevant) ....
echo '<textarea id="textarea['.$blabla["ID"].']" name="textarea" maxlength="1000" onKeyUp="countChars(\'textarea['.$blabla["ID"].']\',\'count\',\'{CHAR}\',1000);""></textarea>';
echo '<span id="counter">1000</span>';
}
JS:
function countChars(entrance, exit, text, characters) {
var entranceObj = document.getElementById(entrance);
var exitObj = document.getElementById(exit);
var length = characters - idObj.value.length;
if (length <= 0) {
length = 0;
text =
'<span class="disable" style="color: red;">' +
text +
'</span>';
entranceObj.value = entranceObj.value.substr(0, characters);
} else if (length <= 20) {
text =
'<span style="color: red">' +
text +
'</span>';
}
exitObj.innerHTML = text.replace("{CHAR}", length);
}
This code works. However, the counter only works for one textarea. Any ideas why it isn't working on all?