2013-06-10 3 views
7

У меня есть текстовое поле (или редактируемый DIV) вход, который я всегда хочу начать с текста по умолчанию И не редактируется пользователем. Так, например:Принудительный ввод текста, чтобы начать с текста по умолчанию

Textbox всегда начинаются со значением по умолчанию: My name is

Пользователи будут иметь возможность и требуется, чтобы добавить свое имя, например: My name is David

Они не смогут удалить My name is текст по умолчанию. В идеале, если пользователь будет щелкнуть в любом месте этого текста по умолчанию, курсор переместится к концу этого текста, поэтому у них не будет возможности даже попытаться ввести что-либо, кроме как по умолчанию. То же самое относится к backspace, текст по умолчанию (My name is) не может быть удален.

Любые предложения? У меня есть возможность использовать Javascript/JQuery.

+7

Посмотрите это http://stackoverflow.com/qu estions/5490410/html-javascript-how-to-make-default-text-of-a-textarea-undeletable – lifetimes

+0

Любая вероятность того, что атрибут placeholder может решить вашу проблему? – Rikon

ответ

0

Почему бы просто не наклеить ярлык (например, span) прямо рядом с текстовой областью и не стилизовать его так, чтобы они выглядели как одна текстовая область. Просто выровняйте их и установите фоновое изображение (или границы css) за ними обоими, используя css, чтобы создать внешний вид текстовой области. Затем выключите нормальные границы текстового поля, используя css. Должно быть достаточно легко закодировать. Трудная часть - это просто правильное оформление. Если вы не возражаете текст находясь на другой линии, которую вы могли бы сделать это (с другого поста):

http://jsfiddle.net/eAW2U/

Или, если вы хотите, чтобы они на той же линии (которая будет работать только для текстового поля на самом деле, а не в текстовом поле, вы могли плавать им

<div style="float:left">etc... 

Или же вы можете использовать нажатие/KeyUp событие, чтобы проверить и посмотреть, если нажатие будет в конечном итоге изменить начало общего текста на и если да отменить его.

Смежные вопросы