Исчезающий текст в input


В основе лежит достаточно простой JavaScript, который можно уместить прямо в самом теге input:

<input type="text" name="name" style="color: #777;" value="Ваше имя" onfocus="if (this.value == 'Ваше имя') {this.value = ''; this.style.color = '#000';}" onblur="if (this.value == '') {this.value = 'Ваше имя'; this.style.color = '#777';}" />

Вначале у нас в поле серым цветом написано "Ваше имя". При получении фокуса на это поле вызывается обработчик события onfocus, в котором мы проверяем, если значение поля равно "Ваше имя", мы его стираем, плюс устанавливаем чёрный цвет. Если там написано что-то другое (пользователь ранее написал), то ничего не делаем.

При потере фокуса вызывается onblur, в котором мы смотрим значение текстового поля, и если оно пустое, то устанавливаем "Ваше имя" и ставим серый цвет.