Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#23 used as offset, casting to integer (23) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#25 used as offset, casting to integer (25) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Как поставить резалку на textarea?
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (1): [1] 

> Без описания
Alone
Отправлено: 08 Марта, 2005 - 02:42:18
Post Id



Super Member


Покинул форум
Сообщений всего: 2393
Дата рег-ции: Дек. 2004  

Карма 8




Мне в гостевой надо поставить резалку. Т.е. чтобы в textarea можно было ввести только например 300 символов.

Например в box резалка режет:
CODE:
<input class=box type=text name=www maxlength=20 size=40>


А в textarea нет:
CODE:
<textarea name=text maxlength=300 cols=55 rows=10></textarea>


Как это сделать?
 
 Top
TvoyWeb Администратор
Отправлено: 08 Марта, 2005 - 04:37:56
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




Alone
Голым HTML'ом не обойтись.
Нужно юзать JS. Вот пример
CODE:
<html>
<head>
<title>Лимит размера текста в Textarea</title>
</head>
<body>
<script language="javascript">
<!--
function Check_Length()
{
text = document.TestForm.TestArea.value;
text_num = text.length;
maxtext_num = 25;//максимальное кол-во символов в сообщении
if (text_num >= maxtext_num ){
document.TestForm.TestArea.value = text.substring(0,25);
}
}
//-->
</script>
<form name="TestForm">
<textarea name="TestArea" cols="65" rows="5" maxlength="50" onKeyUp="Check_Length()" onChange="Check_Length()"></textarea>
</form>
</body>
</html>

думаю разберешься Улыбка
 
 Top
ETC Администратор
Отправлено: 08 Марта, 2005 - 05:01:40
Post Id



Flash-coder


Покинул форум
Сообщений всего: 5275
Дата рег-ции: Дек. 2003  
Откуда: TimeZero

Карма 26




А чё, у textarea maxlength нету? Чё-то я не помню...
 
 Top
TvoyWeb Администратор
Отправлено: 08 Марта, 2005 - 05:13:50
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




ETC пишет:
А чё, у textarea maxlength нету?

Нету как ни странно Улыбка
 
 Top
Alone
Отправлено: 08 Марта, 2005 - 07:07:19
Post Id



Super Member


Покинул форум
Сообщений всего: 2393
Дата рег-ции: Дек. 2004  

Карма 8




TvoyWeb
Хороший скриптик. Но чё-то я не понял - когда вставляешь в форму текст из буфера обмена - он не режится. Режется только если набираешь текст в форме вручную.
Может есть ещё варианты? Если нет, то как мне её разместить сюда:
CODE:
$f->box("* $L[your_name]:name maxlength=10", $_COOKIE['name']);
$f->box("$L[your_email]:mail maxlength=20", $_COOKIE['mail']);
$f->box("$L[your_url]:www maxlength=20", $_COOKIE['www']);
$f->box("$L[your_city]:city maxlength=15", $_COOKIE['city']);
$f->area("* $L[sign_message]:text");


Пробовал так:
CODE:
$f->box("* $L[your_name]:name maxlength=10", $_COOKIE['name']);
$f->box("$L[your_email]:mail maxlength=20", $_COOKIE['mail']);
$f->box("$L[your_url]:www maxlength=20", $_COOKIE['www']);
$f->box("$L[your_city]:city maxlength=15", $_COOKIE['city']);
$f->area("* $L[sign_message]:text
<script language="javascript">
<!--
function Check_Length()
{
text = document.TestForm.TestArea.value;
text_num = text.length;
maxtext_num = 25;//максимальное кол-во символов в сообщении
if (text_num >= maxtext_num ){
document.TestForm.TestArea.value = text.substring(0,25);
}
}
//-->
</script>
");

Но так не работает.
 
 Top
TvoyWeb Администратор
Отправлено: 08 Марта, 2005 - 07:27:29
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




Alone пишет:
Но чё-то я не понял - когда вставляешь в форму текст из буфера обмена - он не режится.

А ты попробуй нажать кнопку или сфокусировать фокус н адругой части страницы, либо просто нажать любую клавишу.
Alone пишет:
Но так не работает.

Цитата:
document.TestForm.TestArea.value;

TestForm - значение параметра name самой формы.
TestArea - значение параметра name текстового поля textarea
 
 Top
kvalitet
Отправлено: 05 Июня, 2005 - 02:33:51
Post Id


Newbie


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2005  

Карма 0




CODE:
<html>
<head>
<title>Лимит размера текста в Textarea</title>
</head>
<body>
<script language="javascript">
<!--
function Check_Length()
{
text = document.TestForm.TestArea.value;
text_num = text.length;
maxtext_num = 25;//максимальное кол-во символов в сообщении
if (text_num >= maxtext_num ){
document.TestForm.TestArea.value = text.substring(0,25);
}
}
//-->
</script>
<form name="TestForm">
<textarea name="TestArea" cols="65" rows="5" maxlength="50" onKeyUp="Check_Length()" onChange="Check_Length()"></textarea>
</form>
</body>
</html>


А как быть если на странице несколько textarea и нужно проконтролировать каждое на длинну ввода (макс. кол-во символов допустим должно быть одинаковым для всех этих textarea)?
 
 Top
TvoyWeb Администратор
Отправлено: 05 Июня, 2005 - 03:16:24
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




В каждой форме на событие ставишь вызов функции Check_Length('TestForm'Подмигивание с текущим именем формы.
 
 Top
kvalitet
Отправлено: 05 Июня, 2005 - 15:11:06
Post Id


Newbie


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2005  

Карма 0




Такое не пойдёт. Форма - одна, а не несколько, и в ней несколько разных полей textarea. Вот под это можно такое приспособить? Недовольство, огорчение
 
 Top
TvoyWeb Администратор
Отправлено: 05 Июня, 2005 - 15:51:16
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




Тогда так:
CODE:
<html>
<head>
<title>Лимит размера текста в Textarea</title>
</head>
<body>
<script language="javascript">
<!--
function Check_Length(AName)
{
text = document.TestForm.elements[AName].value;
text_num = text.length;
maxtext_num = 5;//максимальное кол-во символов в сообщении
if (text_num >= maxtext_num ){
document.TestForm.elements[AName].value = text.substring(0,5);
}
}
//-->
</script>
<form name="TestForm">
<textarea name="TestArea" cols="35" rows="3" maxlength="50" onKeyUp="Check_Length(this.name)" onChange="Check_Length(this.name)"></textarea>
<textarea name="TestArea1" cols="35" rows="3" maxlength="50" onKeyUp="Check_Length(this.name)" onChange="Check_Length(this.name)"></textarea>
<textarea name="TestArea2" cols="35" rows="3" maxlength="50" onKeyUp="Check_Length(this.name)" onChange="Check_Length(this.name)"></textarea>
</form>
</body>
</html>
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0, скрытых: 0)
« HTML »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0453]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33