посчитать слова в форме TewxtArea
Здравствуйте! Необходима помощь в написании небольшого скрипта на javascript. Нужно посчитать количество слов в форме TextArea.
Вот уже готовый вариант: <html><head> <title>Лабораторна робота №3</title> <script> function perevirka(){var s = object.value; if (s=="") alert('Рядок не заданий') else {s = s.replace (/\r\n?|\n/g, ' ').replace (/ {2,}/g, ' ').replace (/^ /, '').replace (/ $/, ''); var q = s.split (' '); alert ('Количество слов: ' + q.length);} } </script> </head> <body> <br> <center> Задайте рядок <br> <textarea name="object" cols="30" rows="10" title="Введите текст" onKeyDown="textCounter(this)" onKeyUp="textCounter(this)"></textarea> <br><br> <input type="button" value="Перевірити" onClick="perevirka()"> </center> </body> </html> Но нужно использовать метод без replace(), для этого надо три переменных: 1) Для считывания текста ( в данном случае она есть это - "s") 2) Для проверки индекса (это не знаю как сделать :-? ) 3) Для вывода количества слов (она есть это q.length) Подскажите попроще как это можно осуществить. Заранее благодарен :) |
Вот здесь на phpguru.com.ua есть реализация
|
Рекомендую там несколько вариантов выбери какой понравится
|
<html><head> <title>Лабораторна робота №3</title> <script> function textCounter(a){ obj = a } function podschet(){ if(typeof obj!=='undefined') var s = obj.value; if (typeof obj=='undefined'||s=="") { alert('Рядок не заданий'); return; } else { var q = s.split(/[\s\n,\.]+/gm); alert ('Количество слов: ' + q.length); } } </script> </head> <body> <br> <center> Задайте рядок <br> <textarea name="object" cols="30" rows="10" title="Введите текст" onClick="textCounter(this)"></textarea> <br><br> <input type="button" value="Перевірити" onClick="podschet()"> </center> </body> </html> |
Часовой пояс GMT +3, время: 15:23. |