![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Wolf1994 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 5.10.2004 Репутация: 4 Всего: 29 |
"Содрал" скрипт для подсчёта оставшихся символов для печати в "<textarea>": http://www.wolf-ware.ru/forum/topic1.html. Счётчик срабатывает только по событиям:
Однако при вставке текста почему-то "onchange" не срабатывает. В справочнике ничего подходящего не нашёл, да и, думаю, что если бы это найти было просто - скрипт уже содержал бы событие. |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Угу, onchange появиться после потери фокуса, а вставку из буффера обмена просто так не отловишь(если это и возможно, то только под ИЕ). Выход: не заморачиваться и предупреждать пользователя в момент отправки формы, стандартная валидация
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Dave |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 17.6.2004 Репутация: нет Всего: 1 |
Ничего не пойму, в чем проблема ?
сходил по ссылке http://www.wolf-ware.ru/forum/topic1.html вставляю в ту textarea текст из буфера и там все прекрасно отлавливается, кол-во оставшихся символов при вставке пересчитывается правильно. Я так понял что проблема все таки с тем что не получается отловить момент вставки из буфера ? Так по той ссылке все отлавливается, Wolf1994, может ты скрипт выдрал неправильно ? На всякий случай вот страничка с примером скрипта который делает то же самое, я тоже его выдрал : )
Скрипт работает в ИЕ, Мозилле, Опере, Нетскейп не проверял. но в любом случае пхп проверку делать нужно. Это сообщение отредактировал(а) Dave - 5.8.2005, 15:26 |
|||
|
||||
| Wolf1994 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 5.10.2004 Репутация: 4 Всего: 29 |
Да. Я проверил: по "Ctrl+V"/"Shift+Ins" - отлавливает. Просто я проверял через мышь, из контекстного меню - "Вставить". Проблемы, скорее всего, нет. Просто решил спросить из академического интереса - вдруг получится сделать лучше...
Добавлено @ 12:05 Если уж говорить о теории, то вообще можно было бы поставить таймер и проверять постоянно изменение длины строки, это решит проблему - но это, imho, извращение Это сообщение отредактировал(а) Wolf1994 - 5.8.2005, 12:07 |
|||
|
||||
| Dave |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 17.6.2004 Репутация: нет Всего: 1 |
Понятно, про вставку из контекстного меню я не подумал.
В этом случае моментально пересчитать символы не знаю как, но можно их пересчитать во время ближайшего onmouseout или onkeyup/onkeydown. Я добавил в исходник примера что я привел выше такую строчку:
т.е. теперь символы пересчитываются при : onKeyUp, onKeyDown, onMouseOut. onMouseOut я добавил чтобы в случае если символов больше чем положени то когда юзер потянется курсором к кнопке Submit то символы пересчитались бы. Второй вариант засабмитить форму это onkeydown: обработчик этого события уже есть. |
|||
|
||||
| Wolf1994 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 5.10.2004 Репутация: 4 Всего: 29 |
Да, mouseout - это выход. Спасибо. Буду использовать.
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |