Convert html tag in textarea to rich text

懵懂的女人 提交于 2019-12-02 03:20:50

问题


I am using PHP to fill a textarea:

<textarea text-input" id="Desc" rows="15" wrap="soft" name="Desc"><?php echo $Desc; ?></textarea> 

but the textarea is showing HTML tags in it, which I don't want.

<b>Analog And Digital System</b><br />
<b>Analog System:</b><br />
A string tied to a doorknob would be an analog system. They have a value that changes steadily over time and can have any one of an infinite set of values in a range. If you put a measuring stick or ruler at a specific point along the string, you can measure the string's value every so many seconds at that point. When you watch it move, you will see it moves constantly. It doesn't instantly jump up and down the ruler. <br />
<br />
<b>Digital System:</b><br />
A digital system would be to flick the light switch on and off. There's no 'in between' values, unlike our string. If the switch you are using is not a dimmer switch, then the light is either on, or off. In this case, the transmitter is the light bulb, the media is the air, and the receiver is your eye. This would be a digital system.<br />

Basically what I want to do is convert <b> tags to make the content bold and <br> tags to new lines.

I want to do it without using any editor.


回答1:


There is no way to to do HTML formatting inside textarea you will have to use ant editor, but if you want to show it in div then setting the attribute contentEditable="true" will do the trick

more references here (already asked on stackoverflow)




回答2:


If you want to show only the HTML output, then use a div tag instead of textarea. Because, we cannot show Rendered HTML inside a textarea.

If you want to show HTML output and want that editable, use contenteditable attribute on div tag.

More about contenteditable and it's support can be found at

https://developer.mozilla.org/en-US/docs/Web/HTML/Content_Editable




回答3:


You should use javascript based WYSIWYG HTML Editors like tinymce and CKEditor for this purpose.

Otherwise the HTML code will remain as they are (plain text).

But if you use the editors, the user will be able to edit the content and the content will be converted to rich text using javascript (and it's exactly what the editors will do for you magically).

WYSIWYG = What You See Is What You Get




回答4:


You should use the code in here Converting <br /> into a new line for use in a text area

<?  
   $text = "Hello <br /> Hello again <br> Hello again again <br/> Goodbye <BR>";
   $breaks = array("<br />","<br>","<br/>");  
   $text = str_ireplace($breaks, "\r\n", $text);  
?>  
<textarea><? echo $text; ?></textarea>


来源:https://stackoverflow.com/questions/17785845/convert-html-tag-in-textarea-to-rich-text

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!