Задать вопрос
@Ysery

Оповещение о минимальном количестве символов в textarea?

Доброго времени суток, уважаемые специалисты.

Подскажите, как переделать этот код, чтобы количество набираемых символов не было видно. А если пользователь написал сообщение, к примеру, в 40 символов, и попытался отправить, то выводилось бы "Слишком мало символов, осталось <тут количество оставшихся символов в реальном времени>". И когда пользователь набирал бы 51 символ, то сообщение скрывалось.

Т.е. написал человек сообщение "Спасибо", нажал на кнопочку Отправить, а ему показало "Слишком мало символов, осталось 43". И он такой стал писать "Спасибо, всё теперь понятно стало." При этом после ввода каждого символа счётчик символов уменьшался бы 42... 41... 40... 39... и так далее. А когда бы комментарий преодолел 50 символ, то сообщение исчезало вовсе.

<script type="text/javascript">
function CheckLength() {
    var msg_area = document.getElementById("Message");
    msg_area.innerHTML = "";
    if (document.getElementById("membershortdescription").value.length < 50) {
        msg_area.innerHTML = "Слишком мало символов";
        return false;
    } else document.getElementById("form3").submit();
}

function textCounter(membershortdescription, counterID, minLen) {
cnt = document.getElementById(counterID);

if (membershortdescription.value.length < minLen) {
 cnt.innerHTML = minLen - membershortdescription.value.length;
} else {
 cnt.innerHTML = "OK";
}

}

</script>


<form action="mypage.php" name="form3" enctype="multipart/form-data" method="post" onsubmit="return CheckLength ()">

<textarea rows="8" cols="38" name="membershortdescription" id="membershortdescription" class="profileFormSelect" onKeyUp="textCounter(this,'count_display',50);"  onBlur="textCounter(this,'count_display',50);"></textarea>
            <br />
            <span id="count_display">50</span>
            <span id="Message" style="color: #ff0000"></span>

<input type='submit' value='submit'>
</form>


Если что, на сайте есть jQwerty
  • Вопрос задан
  • 89 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Karpion
Для начала надо найти обработчик события, вызываемый при каждом изменении содержимого области ввода. Т.е. берём учебник/справочник, читаем описания всех обработчиков, которые можно пришить к области ввода.
А далее берём длину строки от содержимого области ввода и обрабатываем её как нужно. Кстати, в идеале - кнопку "отправить сообщение" надо сделать неактивной на всё время, пока содержимое поля ввода не соответствует нашим критериям.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы