修改 HTML 的文本区域 - 呈现换行符
Posted
技术标签:
【中文标题】修改 HTML 的文本区域 - 呈现换行符【英文标题】:Text area to modify HTML - rendering line breaks 【发布时间】:2012-01-28 06:41:51 【问题描述】:我正在将 html 页面的一部分加载到文本区域中,以便进行一些小的更改。所有的 HTML 标签都与文本一起显示,这是我需要做的;我不想要所见即所得的编辑器或任何花哨的东西。
我想要的一件事是除了<p></p>
和<h1></h1>
标签之外,还要在文本区域中显示换行符,否则它是一堵巨大的文本墙,很难校对。我不希望在保存修改后将换行符加倍,因为下一步是将文本区域中的所有内容转换为 PDF 文件。
ETA:nl2br() 不起作用,因为开始时没有换行符。内容是使用循环从 mysql 数据库中的段落组装而成的。
标签也会在循环中插入。
最好的方法是什么?我正在使用 php。
哦,PS - 我知道不剥离标签的安全问题。此页面仅供管理员(我)使用,将受密码保护。
【问题讨论】:
【参考方案1】:也许您可以先过滤这些,然后再显示给textarea
?可能是这样的(在结束标记后添加换行符):
$rawhtml = str_replace(array("</p>", "</h1>"), "\n", $rawhtml);
【讨论】:
当然!我试过了,但是一个语法错误让我失望了。在保存最终草稿之前是否需要去掉“\n\n”?谢谢!比利 这取决于。您是否希望在您的数据库中再次清除 ot?【参考方案2】:在将数据发送到您的 textarea 之前,请将您的变量放入 nl2br() func 中,然后将其发送到您的 textarea。
【讨论】:
这不起作用,因为开始时没有换行符。内容是使用循环从 mySQL 数据库中的段落组装而成的。标签也在循环期间插入。对不起;我想我应该把它包含在原帖中!谢谢,比利
以上是关于修改 HTML 的文本区域 - 呈现换行符的主要内容,如果未能解决你的问题,请参考以下文章