Подтвердить что ты не робот

Могу ли я встроить HTML-форматирование внутри тега <textarea>?

Если у меня есть блок textarea, например...

<textarea name="myTextArea" cols="100" rows="20" readonly=readonly>
.. text area content ...
</textarea>

Как я могу вставить HTML-форматированный текст внутри этого текстового блока? Если бы я мог понять, что следующее должно работать...

<textarea name="myTextArea" cols="100" rows="20" readonly=readonly>
<b>Hello how are you today?</b>
</textarea>

В качестве примера. Но это предложение не выделяется смело. Может быть, я просто пытаюсь сделать что-то, что нельзя сделать?

4b9b3361

Ответ 1

Я уверен, что ответа нет - не могу сделать это с помощью textarea.

Из MDN docs:

Элемент HTML <textarea> представляет собой многострочный текстовый редактор для редактирования текста.

  • Допустимый контент Текст

Ответ 3

Невозможно использовать

<textarea> 

Используйте это:

<div contenteditable="true">
</div>

Ответ 4

Вы правы, это невозможно.

Согласно MDN, " символьные данные "является единственным разрешенным контентом для <textarea>.

Как рассказали другие ответы, вы ищете редактор WYSIWYG, например CKEditor, TinyMCE или Kendo Editor.

Это не так, но интересно, MDN перечисляет некоторые примеры на странице HTMLTextAreaElement о том, как включить динамическое добавление HTML-тегов вокруг текста в <textarea> и как включить авторазведение для <textarea>.

Ответ 5

Вы можете сделать это (конвертировать "специальные" символы):

<textarea name="myTextArea" cols="100" rows="20" readonly=readonly>
&lt;b&gt;Hello how are you today?&lt;/b&gt;
</textarea>

Ответ 6

Неа! Если вы подтвердили это в документе HTML, вы получите ошибку в строке "Тип документа не позволяет элементу" b "здесь".

Что бы вы искали, это редактор What-You-See-Is-What-You-Get, который на самом деле является <iframe>, который использует функцию JavaScript designMode. Можно найти учебные пособия о том, как их создать, но гораздо лучше использовать существующую, поскольку это будет действительно полезный и полезный, требует много работы.

Обратите внимание: если вы все еще заинтересованы в проверке, которой вы должны быть, если работаете с HTML, - это то, что вы не сможете использовать строгое объявление DOCTYPE, поскольку редактор WYSIWYG будет используя iframe.

Ответ 7

Вы можете попробовать это слишком просто, и если вы используете asp.net, используйте lable contron в текстовой области, добавьте это как

Text="&lt; stonename &gt;" 
"&lt";stonename"&gt";

Ответ 8

Вот ответ.

Используйте эту функцию.

function br2nl(varTest) {
        return varTest.replace(/<br\s*\/?>/ig, "\r");
    }

Ответ 9

Вы не можете сделать это внутри textarea, но что вы можете сделать... вы можете использовать p-тег и синтаксическую информацию для тега JQuery. Что-то вроде этого:

    var stringviewinfo ="aaaaaaaaaaaaaaaaaa<br>aaaaaaaaaaaaaaaaaaaaaaaaa<br>aaaaaaaaaaaaaaaa<b>aaaaaaaa</b>aaaaaaaaaaaaaaaaaa<br>aaaaaaaaaaa<font color=\"red\">AAAA</font>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa<b>aaaaaaaaaaaaa<b>aaaaaaaaaaaaaaaaaaaaaaaaaaaa<br>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</br>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";      
$('#viewinfo').html(stringviewinfo);
<p style="word-wrap: break-word;" id="viewinfo"></p>

Надеюсь, это поможет.