Скрипт считает количество слов, введенных в текстовую форму.
Примерный HTML-код для формы ввода текста и получения результатов подсчета:
<form name="textForm">
<textArea maxlength="1000" rows="12" cols="30" onchange="countWords(this)"></textArea><br>
<strong>Количество слов в форме:</strong>
<input type="text" size="5" id="word_amount" readonly />
</form>
Далее следует скрипт, алгоритм действий которого следующий: переносы слов в текстовой форме заменяем пробелами, несловарные символы (точки, запятые, скобки, двоеточия и т.п.) заменяем пробелами, заменяем более одного пробела на одиночный пробел, удаляем пробел в конце и начале строки.
Затем из полученной строки создаем массив, в качестве разделителей элементов используем пробел. Количество слов в текстовой форме равно длине полученного массива. Записываем результат в input с id="word_amount".
function countWords(textarea) {
if (textarea.value != 0 ) {
var stringText = textarea.value.replace(/\n/," ").replace(/\W/gi," ").replace(/\s{2,}/gi," ").replace(/ $/,"").replace(/^ /,"");
var text_array = stringText.split(" ");
document.getElementById("word_amount").value = text_array.length;
} else {
document.getElementById("word_amount").value = 0;
}
}
Заказ дополнительных модулей, доработок и кастомизации скрипта ждем по эл.адресу автора: freeden_codomaza@mail.ru .
Почему-то русские символы скрипт не считает.