textarea中的换行符怎样显示在网页中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了textarea中的换行符怎样显示在网页中相关的知识,希望对你有一定的参考价值。

我把textaret中的内容保存在数据库中或文件(xml,txt)中,有换行的,怎么调出来显示在页面上就没有换行呢,怎样才能让它在页面中也显示出来呢
我是通过Java生成Html页面的,并把字符存放在相应的位置
标签<pre></pre>, 好像没有用啊

你显示出来的时候是显示在哪里?显示在textarea里就什么都不用处理,
其他地方的话,有两种方法,
一种是用标签<pre></pre>,
另外一种就是替换字符串了,替换字符串又可以有几个选择:
1.保存到数据库前就替换
1.1 页面上用javascript替换
1.2 后台java替换
2.要显示的时候才替换
同样,可以用java或者js替换

具体看哪个最适合你了

替换的方法也很简单,这里就不多说了
参考技术A 用插件来配合textarea吧,比如FCKeditor,功能和可扩展性比较强大。

如果自己写的话你需要在保存到数据库之前做一下字符替换,把text中的回车全部替换为"<br />", 这样转义成HTML语言才是真正的回车。
参考技术B 用字符串的replace方法
将所有的 /r/n 转换为 <br/> 就行了

Textarea 在 IE 中不显示换行符

【中文标题】Textarea 在 IE 中不显示换行符【英文标题】:Textarea doesn't show newline in IE 【发布时间】:2011-08-07 02:51:03 【问题描述】:

当文本被放入文本区域时,看起来 IE 会忽略文本中的 \r\n。以下是它在 FF/Chrome/Opera 中的外观:

Paragraph1 sometext
Paragraph2 othertext

在 IE7/8 中:

Paragraph1 sometextParagraph2 othertext

我尝试更改“新行”css 参数,但没有成功。有什么想法可能是错的吗?

我使用 asp.net 作为后端,我将文本分配给 textarea,但我怀疑它是否相关。

更新:似乎是 asp.net 为不同的浏览器呈现不同的 asp:TextArea - 对于 IE,它似乎忽略了换行符。当我用 textarea 替换 asp:TextBox 时,我得到了正确的结果。任何想法如何解决这个问题?

【问题讨论】:

如果您查看页面的源代码,您是否看到换行符?这会让你看看是后端问题还是前端问题。 嗯,当我查看源代码时,我在 Chrome 中看到了新行,但在 IE 中没有。可能是 IE 没有给我正确的源代码吗?我怀疑 asp.net 为不同的浏览器呈现不同的文本。 也许您应该显示将文本设置为文本框的代码。 @Mystere Man: txtMemberObjectives.Text = "Paragraph1 sometext\r\nParagraph2 othertext"; 好的,txtMemberObjectives 是一个带有 runat="server" 的 html &lt;textarea&gt; 吗?还是多行&lt;asp:TextBox&gt; 【参考方案1】:

原来我的问题与 textarea 本身无关,而是与我转义输出和取消转义输入的方式有关。我将针对该问题提出另一个问题。

【讨论】:

【参考方案2】:

我遇到了同样的问题,如果为标记为 TextMode="MultiLine" 的 TextBox 指定宽度会导致上述行为。我解决了它手动指定文本框的行和列属性。

【讨论】:

【参考方案3】:

“MultiLine”设置为“TextMode”的文本框是渲染到的,所以这不是问题...

【讨论】:

&lt;asp:TextBox runat="server" TextMode="MultiLine"/&gt; 等于 &lt;textarea&gt;&lt;/textarea&gt;【参考方案4】:

换行符是\r\n,而不是\n\r。是的,它有所作为。

【讨论】:

这是 \r\n 当然,我打错了我的问题。感谢您纠正我。

以上是关于textarea中的换行符怎样显示在网页中的主要内容,如果未能解决你的问题,请参考以下文章

换行符在 textarea 中显示为 \r\n

textarea保持文本样式

javascript/html/php 捕获 textarea 中的换行符

Textarea 在 IE 中不显示换行符

关于html里面textarea换行的问题

在数据库中存储带有换行符的 TextArea 数据并以相同的格式显示带有换行符