Javascript-форум (https://javascript.ru/forum/)
-   (X)HTML/CSS (https://javascript.ru/forum/xhtml-html-css/)
-   -   Вставка тэгов в textarea (https://javascript.ru/forum/xhtml-html-css/26332-vstavka-tehgov-v-textarea.html)

zhurchik 05.03.2012 00:27

Вставка тэгов в textarea
 
Здравствуйте!
Столкнулся с вот такой проблемой. Создаю форму всю ее писать не буду напишу лишь для наглядности поле
<textarea></textarea> в него помещаю просто текст все работает как нужно при обновлении страницы текст находится в поле, но когда вставляю не просто текст а что-то вроде этого <textarea>Уже не <b>просто</b> текст</textarea> то-есть слово "просто" я выделил жирным начертанием то при обновлении страницы тег <b></b> выводится в поле в естественном виде, а нужно что бы он задал жирное начертание.
Как это можно сделать?

Я знаю, что так возможно сделать потому что видел во многих редакторах такое, вот только разбирая их не понял как это можно реализовать, надеюсь на вашу помощь!

devote 05.03.2012 01:12

Цитата:

Сообщение от zhurchik
Я знаю, что так возможно сделать потому что видел во многих редакторах такое, вот только разбирая их не понял как это можно реализовать, надеюсь на вашу помощь!

textarea так делать не умеет, а в тех что вы видели, делается это наложением поверх textarea слоя с атрибутом contenteditable. Чаще всего используют iframe что бы при форматировании не исказило сам сайт.

T-sh 05.03.2012 05:10

в редакторах существуют переключатели с визуального на html-вариант отображения.

html-вариант — это обычная textarea, поэтому и отображает теги.
визуальный вариант — это эмуляция textarea обычным блоком. Эмулируется двумя способами (вернее, я знаю только два способа, может ещё есть):
1. как описал devote — наложением.
2. javascript'ом перехвата нажатия клавиш и добавления результата в блок с соответственным форматированием.

сам делал в прошлом году по второму варианту.. громадный скрипт, большой геморрой и потраченные нервы, но вроде всё работало :)

минусы:
1. трудно сделать мигающий курсор, как в textarea
2. приходится дополнительно заморачиваться с отловом позиций (и тут contenteditable спасает)

плюсы: опыт :)

zhurchik 05.03.2012 09:20

Спасибо ребят помогли!
Жаль, что этого не умеет голое поле textarea


Часовой пояс GMT +3, время: 15:31.