Поискав в гугле и на хабре не нашел полностью готового и устраивающего меня решения, пришлось собирать из того что нашел. Вот что получилось в итоге:
Проверку длины решил осуществлять на следующих этапах:
Событие onchange пришлось обрабатывать, поскольку не все браузеры по умолчанию поддерживают работу с буфером обмена из javascript.
Думаю код не слишком сложный и дополнительных пояснениях не требует, поэтому много комментариев не делал.
Проверку длины решил осуществлять на следующих этапах:
- нажатие клавиши
- вставке из буфера обмена
- завершение редактирования textarea
<textarea id="testArea" name="testArea" onkeypress="return onTextAreaKeyPress(this, event)" onpaste="return onTextAreaPaste(this, event)" onchange="onTextAreaChange(this)" />
Событие onchange пришлось обрабатывать, поскольку не все браузеры по умолчанию поддерживают работу с буфером обмена из javascript.
Думаю код не слишком сложный и дополнительных пояснениях не требует, поэтому много комментариев не делал.