JSP动态显示数据库数据:换行与格式转换
"在JSP页面中,用户常常需要将数据库中的数据按照特定的格式,如自动换行,显示出来。本示例展示了如何处理数据库数据并根据用户输入的格式进行输出,确保在网页上正确显示。 在Web开发中,尤其是使用JSP(JavaServer Pages)时,我们经常需要将数据库查询的结果呈现在网页上。用户可能希望数据以特定的格式显示,例如,文本在浏览器中自动换行。传统的文本换行字符如'\r\n'在HTML中可能不会按预期工作,因为HTML会忽略这些换行符。因此,我们需要对数据进行处理,将换行符转换为HTML理解的换行标记`<br/>`。 在提供的代码中,有两个关键的函数:`Html2Text` 和 `Text2Html`,它们分别用于将HTML内容转换为纯文本格式(适合在textarea中显示),以及将纯文本内容转换回HTML格式(适合在网页上显示)。 `Html2Text` 函数的目的是去除HTML标签,并将`<br>`标签替换为换行符(VBcrlf)。这样,当数据从HTML转换为在textarea中显示时,换行会被正确地保留下来。函数通过一系列的Replace操作实现这一目标,将特殊字符转换为它们的等价文本表示,例如将`<`、`>`、`"`、`'`和`&`进行转义。 相反,`Text2Html` 函数的作用是将文本内容(例如来自textarea的用户输入)转换回HTML格式,以便在网页上正确渲染。它将换行符(VBcrlf)替换为`<br>`标签,同时处理其他特殊字符,确保它们在HTML中被正确解析。 在实际应用中,你可能需要在JSP页面的后台逻辑部分调用这两个函数,例如在用户提交表单时,将textarea中的内容转换为HTML格式存储到数据库,或者在显示数据时,将数据库中的内容转换为适应textarea的格式。 在JavaScript中,也有类似的方法处理字符串中的换行。例如,你可以使用`indexOf`和`replace`方法来查找和替换特定的字符序列。在示例中,一个循环用于查找并替换所有`\n`字符,将其替换为`<br>`,从而实现文本的自动换行。 要让数据库数据在JSP页面中按照用户期望的格式(比如自动换行)显示,需要对数据进行适当的处理,转换换行符并处理其他可能影响显示的特殊字符。提供的代码片段提供了一种解决方案,通过自定义函数完成这种转换,确保了在textarea和网页上的显示效果一致。
做简单留言或评论时经常会遇到在textarea里用回车和空格做的排版,提交后格式没有保留,这是因为textarea里输入和车出现的是编码vbCrlf,页面读取数据库显示的内容必须有
才可以显示换行,所以我们要做的就是在存入数据时把vbCrlf换成
。
录入数据库时
str = Replace(str,vbCrlf, "
" ) 这样页显示的时候就有换行了
当要编辑信息时
str = Replace(str,"
" ,vbCrlf)这样放到编辑的textarea上时就有换行了
写到数据库的内容,读出来时没有了空格和换行,该怎么解决?
或与此类似问题的解答就是在写入数据库做Replace替换
拿出我用的一个函数供大家参考深水动力
<% '----------Html转换为文本:编辑时拿来做转换
Function Html2Text(Str1)
If isNULL(Str1)
Then Html2Text=""
Exit Function
End If
Str1=Replace(Str1,"<"," <")
Str1=Replace(Str1,">",">")
Str1=Replace(Str1," <br>",VBcrlf)
Str1=Replace(Str1,""",chr(34))
Str1=Replace(Str1," "," ")
Str1=Replace(Str1,"&","&")
Html2Text=Str1
End Function
下载后可阅读完整内容,剩余2页未读,立即下载
- 粉丝: 1
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- WebLogic集群配置与管理实战指南
- AIX5.3上安装Weblogic 9.2详细步骤
- 面向对象编程模拟试题详解与解析
- Flex+FMS2.0中文教程:开发流媒体应用的实践指南
- PID调节深入解析:从入门到精通
- 数字水印技术:保护版权的新防线
- 8位数码管显示24小时制数字电子钟程序设计
- Mhdd免费版详细使用教程:硬盘检测与坏道屏蔽
- 操作系统期末复习指南:进程、线程与系统调用详解
- Cognos8性能优化指南:软件参数与报表设计调优
- Cognos8开发入门:从Transformer到ReportStudio
- Cisco 6509交换机配置全面指南
- C#入门:XML基础教程与实例解析
- Matlab振动分析详解:从单自由度到6自由度模型
- Eclipse JDT中的ASTParser详解与核心类介绍
- Java程序员必备资源网站大全