存储到数据库中的文章,为什么取出来之后就没有换行、空格了?
2013-07-01 19:30
363 查看
在taxtarea中输入的文本。如果含有回车或空格。在界面上显示的时候则不哪么正常。回车消失了,空格变短了。
如何解决这个问题呢。有2种方法。
1.使用<pre>标签
w3c对pre元素是这样定义的:pre 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体。
更详细的内容请参考 http://www.w3school.com.cn/tags/tag_pre.asp
也就是说包含在pre标签中的回车和空格会正常的显示出来。包括你在页面代码中输入的。所以如果使用pre元素你需要这样写:
<pre>要输出的文本</pre> ,而不是这样:
<pre>
要输出的文本
</pre> 后一种写法 文本前的空白也会被显示的。除非你真的希望这样:)
2.对文本内容进行替换。
回车和空格不能正确显示,究其原因是他们各自的表示方式不同。在textarea里面输入的回车是字符"\r",html中的回车(换行)是"<br/>"。
textarea中输入的空格是空白" ",而html中的一个空格是" "。理所当然不能正确显示。好了现在知道了原因就有了第二种解决方案了。
只要我们将输入的文本中相应的"元素"替换成html认识的就ok了。因此下面一行代码即可解决问题:
"要输出的文本".replaceAll(" "," ").replaceAll("\r","<br/>"); 等等。这里还有一点小问题。把一个空格替换成一个" "空格看上去仍然要少些。如果你喜欢可以替换成2个。
最后,除了回车和空格以外还有很多空白字符如tab等,如果你喜欢可以一并处理了^_^
最后的最后,如果本来的文本是很长的一行,使用pre标签后就不会自动换行。结果页面出现横向滚动条。不知道有没有好的解决方法?
而将第二种方法处理过的文本放在<p>标签中显示,就可以显示正常。
如何解决这个问题呢。有2种方法。
1.使用<pre>标签
w3c对pre元素是这样定义的:pre 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体。
更详细的内容请参考 http://www.w3school.com.cn/tags/tag_pre.asp
也就是说包含在pre标签中的回车和空格会正常的显示出来。包括你在页面代码中输入的。所以如果使用pre元素你需要这样写:
<pre>要输出的文本</pre> ,而不是这样:
<pre>
要输出的文本
</pre> 后一种写法 文本前的空白也会被显示的。除非你真的希望这样:)
2.对文本内容进行替换。
回车和空格不能正确显示,究其原因是他们各自的表示方式不同。在textarea里面输入的回车是字符"\r",html中的回车(换行)是"<br/>"。
textarea中输入的空格是空白" ",而html中的一个空格是" "。理所当然不能正确显示。好了现在知道了原因就有了第二种解决方案了。
只要我们将输入的文本中相应的"元素"替换成html认识的就ok了。因此下面一行代码即可解决问题:
"要输出的文本".replaceAll(" "," ").replaceAll("\r","<br/>"); 等等。这里还有一点小问题。把一个空格替换成一个" "空格看上去仍然要少些。如果你喜欢可以替换成2个。
最后,除了回车和空格以外还有很多空白字符如tab等,如果你喜欢可以一并处理了^_^
最后的最后,如果本来的文本是很长的一行,使用pre标签后就不会自动换行。结果页面出现横向滚动条。不知道有没有好的解决方法?
而将第二种方法处理过的文本放在<p>标签中显示,就可以显示正常。
相关文章推荐
- 存储到数据库中的文章,为什么取出来之后就没有换行、空格了?
- 【翻译自mos文章】在一次失败的 'Shutdown Immediate'之后,数据库job 不能运行。
- 存储到数据库的文章如何保留原有格式
- 可是把ie67下面的bug改好了,其实很简单,ie67下面取出来的字符串是带有空格的,不知道为什么
- Hibernate3.0 数据库存储Date类型没有时分秒问题
- textarea文字换行保存到数据后读出来没有换行 解决方案
- 转:数据库管理对象(SMO)-为什么没有System.Data.DBManagement命名空间?
- 微信小程序作品集实例:跨页面传参,数据库,换行,空格,css
- [翻译自mos文章]不完全恢复之后,open resetlogs之前,怎么快速的检查数据库是否处于一致性的状态?
- 存储到数据库的文章如何保留原有格式
- jsPlumb系列问题:请问jsPlumb渲染出来之后线条没有连接节点?需要拖动之后才连上
- 为什么ABAP整型的1转成string之后,后面会多个空格
- 为什么总没有写文章的习惯
- 为什么看了那么多hadoop干货文章,却依然没有做好hadoop环境搭建
- 把Textbox中写入的内容格式化(比如空格、分段)传到数据库然后用label正常显示出来
- 【Android】数据存储数据库SQLite(之前有看到的一篇关于SQLite文章,简单明了、覆盖较全面适合学习)
- 9path为什么没有用呢?画的黑点点都显出来了
- 存储到数据库的文章如何保留原有格式
- C#将相片转换成二进制存储在数据库中,再从数据库中显示出来
- 查询数据库中没有数据的表 暂时只能查询出来肉眼比对