[Ликбез]

Форма входа
Логин:
Пароль:

Меню сайта


Скрипты и коды для юкоз - Форум аццкого кодера » Как сделать... Тема только по сайтам в системе uCoz » Информационный текст в поле сообщения. Имитация placeholder

Информационный текст в поле сообщения. Имитация placeholder
[1] Komoff [26.03.2012, 09:35]
Привет! Для чата добавил скрипт, что бы в value текст добавлялся
Code
<script type="text/javascript">
document.getElementById('mchatMsgF').value='Сообщение появится после проверки модератором!';
</script>
Правильный хоть?:) Не могу понять как правильно добавить событие onclick чтобы при клике по полю этот текст исчезал, знаю что просто... помоги?


Сообщение отредактировал Komoff - Понедельник, 26.03.2012, 15:49
[2] likbezz [26.03.2012, 16:27]
Komoff,
Quote (Komoff)
Правильный хоть?:) Не могу понять как правильно добавить событие onclick чтобы при клике по полю этот текст исчезал

Просто исчезал? С концами? Вот так:
Code
<script type="text/javascript">
$('#mchatMsgF').val('Сообщение появится после проверки модератором!').click(function(){
if(this.value=='Сообщение появится после проверки модератором!'){
  this.value='';
};
});
</script>

...

А чтобы потом снова появлялся, нужно запомнить значение.
Типа:
Code
<script type="text/javascript">
$('#mchatMsgF').val('Сообщение появится после проверки модератором!').click(function(){
if(!$(this).data('placeholder'))$(this).data('placeholder',this.value);
if(this.value==$(this).data('placeholder')){
  this.value='';
};
}).blur(function(){
  if(this.value==''){
   this.value=$(this).data('placeholder');
  };
});
</script>

...

Пример всего этого, на всякий: placeholder
...
[3] Komoff [26.03.2012, 18:30]
likbezz, спасибо! Поставил. А чем focus от click отличается? Я почему-то разницы не вижу...
[4] likbezz [26.03.2012, 18:31]
Komoff,
Quote (Komoff)
А чем focus от click отличается? Я почему-то разницы не вижу...

Правой клавишей по полю кликни, фокус обработается а клик нет.
...
[5] Komoff [26.03.2012, 18:31]
Quote (likbezz)
Правой клавишей по полю кликни, фокус обработается а клик нет.
Хех, вон оно че. cool
[6] Andrio [13.01.2014, 08:27]
Доброго времени суток всем!
С прошедшими праздниками, остался последний рубеж - Старый Новый Год smile

По делу, вроде как нашёл нужную тему по своему вопросу, что бы новую не создавать ...

Использовал в коде изначально required="" и placeholder=""
Сам по себе placeholder="" решил заменить на
Код
required="" id="tel" name="tel" onBlur="if(value==''){value='Телефон*'}" onFocus="if(value=='Телефон*'){value=''}" value="Телефон*"

- пример для поля телефона в форме, но при этом value="Телефон*" убил required=""
Как можно это поправить?
А то как то placeholder="" не очень нравиться ))), а без обязательности заполнения пользователем тоже не айс

Заранее респект за помощь!


Сообщение отредактировал Andrio - Понедельник, 13.01.2014, 08:28
[7] likbezz [13.01.2014, 08:37]
Andrio,
Цитата Andrio, Пн, 13.01.2014, 08:27:50
С прошедшими праздниками, остался последний рубеж - Старый Новый Год

Аха) пасиб)
И тебя с наступающими)

Цитата Andrio, Пн, 13.01.2014, 08:27:50
Как можно это поправить?

Выбрать что-то одно - либо required либо заполнение value ..
Или юзать как и положено:
Код
<input id="tel" name="tel" required placeholder="Телефон" />

Или проверять заполнение скриптом.
..
[8] Andrio [13.01.2014, 08:43]
Цитата likbezz, Пн, 13.01.2014, 08:37:43
Или проверять заполнение скриптом.

Можно пример, что за скрипт? ... сложный, большой?
По идее в форме 5 полей:
-4 инпута текстовых ( value="ФИО*", value="Телефон*", value="E-mail*", value="Количество: 1" )
- одно textarea ( но по нему, кстати, почему то не работает код вместо placeholder )

По идее надо как то проверить что бы заполненные данные не совпадали с value по умолчанию ...


Сообщение отредактировал Andrio - Понедельник, 13.01.2014, 08:46
[9] likbezz [13.01.2014, 08:52]
Andrio,
Цитата Andrio, Пн, 13.01.2014, 08:43:31
Можно пример, что за скрипт?

Обычный цикл, проходящийся по текстовым импутам, проверяющий наличие атрибута required и неравенство value с каким-то дополнительным атрибутом или установленным значением.
Если равно - выдает предупреждение в любой приемлемой форме.
Например для поля телефон можно установить атрибут data-value="Телефон" - и если value == data-value - что должно быть по умолчанию - значит юзер ничего не ввел - выводим предупреждение, вываливаемся из цикла, возвращаем false.
Предупреждение может быть любым, начиная от красной рамочки вокруг инпута, до алерта с гневным текстом.


Полная версия сайта