PDA

Просмотр полной версии : выделить содержимое textArea одним кликом мышки


Mattie
23.10.2006, 17:15
Здравствуйте,

есть компонент Text Area с текстом внутри.
нужно, чтоб пользователь мог одним кликом мышки выделять все содержимое (точно как в Java Script есть Onclick focus()... )

можно еще добавить кнопку "выделить все", и при нажатии на нее, будет выделяться все содержимое text area, но хочется все-же обойтись без кнопки.

selectAll.addEventListener("click", selAll);
function selAll(){
Selection.setFocus(area);
Selection.setSelection(0,area.length);
}


как это сделать? не нашел в мануале.

спасибо

FlaMaker
04.11.2006, 12:42
Привет!
Выложи исходник с тем, что у тебя получилось(включая код из примера) и напиши варианты, которые тебе бы подошли.

Дело в том, что я пытался решить эту задачку и такие результаты:
Функции
Selection.setFocus
Selection.setSelection
отлично работают с TextField (ну ты знаешь, динамическое, статическое поле).
Текст у меня хорошо держался выделенным при использовании данных функций относительно TextField.
Ты интересовался как сделать выделение текста без кнопки. Я не совсем понимаю назначение выделения всего текста. Если тебе нужно очищать этот текст, то это я знаю как сделать и это реализуется проще. Если нужно, чтобы выполнялась процедура при нажатии мышью по ТекстАреа, тогда это - событие focusIn. Я проверял на трейсе, сообщение выводилось при выборе текстового поля.
По дополнительной информации лучше пиши мне в персональные сообщения.
Надеюсь , что ты рад вниманию к твоему вопросу

Хемуль
05.11.2006, 00:34
2 Mattie:
Одним кликом мышки выделить всё содержимое текстового поля? Одним кликом по чему именно?

BigDan
05.11.2006, 01:11
2 Mattie:
Одним кликом мышки выделить всё содержимое текстового поля? Одним кликом по чему именно?
А как ты думаешь? По тексту :)
Mattie
Создай свой обработчик событий(что-то вроде онМоусДоун, только для текстового поля). Потом в обработчике напиши, то что в первом посте писал. Еще можно создать невидимую кнопку поверх текстового поля, тогда все еще проще.