Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Оперативный контроль длины текста
 
 автор: Владимир55   (01.08.2010 в 21:54)   письмо автору
59.2 Кб
 
 

В приложении скриншот сервиса, оперативно контролирующего размер введенного сообщения.

Как это делается?

Вероятно, через Аякс? А как?

  Ответить  
 
 автор: sms-send   (01.08.2010 в 22:39)   письмо автору
 
   для: Владимир55   (01.08.2010 в 21:54)
 

> Как мне кажется, здесь обошлось без Аякс.
Сначала правильно казалось)

Более менее приемлимый вариант, обрабатывать события:
1. onfocus, в обработчике вызывать функцию window.setInterval, чтобы раз в определённый промежуток времени вызывать "контролирующую" функцию, возвращаемое значение нужно сохранить.
2. onblur, в обработчике вызывать window.clearInterval, в аргументе нужно передать значение, возвращённое функцией setInterval, чтобы прекратить вызовы "контролирующей" функции.

Сама функция должна получать длину текста в текстовом поле, обращаясь к свойству элемента input:
элемент.value.length
и дальше уже ваша логика, что с этой длиной делать.

  Ответить  
 
 автор: sim5   (02.08.2010 в 01:10)   письмо автору
 
   для: sms-send   (01.08.2010 в 22:39)
 

Не обязательно запускать интервал, и без него все можно проверить и обрезать.

  Ответить  
 
 автор: sms-send   (02.08.2010 в 02:16)   письмо автору
 
   для: sim5   (02.08.2010 в 01:10)
 

Действительно, не обязательно. Вариантов реализации много, я указал на тот, который считаю "более менее приемлимым". В том смысле, что работать оно будет при любых вариантах изменения длины строки в текстовом поле.

Если у вас есть более простой/эффективный вариант без setInterval - покажите, интересно посмотреть.

  Ответить  
 
 автор: AlexSol   (02.08.2010 в 06:20)   письмо автору
 
   для: sms-send   (02.08.2010 в 02:16)
 

onkeyup + onchange проверки

  Ответить  
 
 автор: sms-send   (02.08.2010 в 13:19)   письмо автору
 
   для: AlexSol   (02.08.2010 в 06:20)
 

Например, как минимум в Opera и в IE при вставке/удалении текста из контекстного меню - "оперативной" реакции не будет (onchange произойдёт только в момент потери фокуса).

  Ответить  
 
 автор: AlexSol   (02.08.2010 в 14:52)   письмо автору
 
   для: sms-send   (02.08.2010 в 13:19)
 

именно так

  Ответить  
 
 автор: AlexSol   (02.08.2010 в 06:22)   письмо автору
 
   для: Владимир55   (01.08.2010 в 21:54)
 

подсчет вводимых символов jquery

  Ответить  
 
 автор: Владимир55   (02.08.2010 в 11:40)   письмо автору
 
   для: AlexSol   (02.08.2010 в 06:22)
 

Спасибо, очень интересная информация!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования