[英]How to preserve rich text in database?
我正在创建一个屏幕,在第一个屏幕上将显示存储在本地数据库中的数据。在第二个屏幕上,用户可以编辑该数据,也可以粘贴富文本。我正在使用contenteditable div
。 第三个屏幕将显示用户编辑的数据并将其存储在数据库中。 我正在使用 Java 检索数据并将其存储在数据库中。 目前我面临 2 个问题,1.我可以在第二个屏幕上的XSL
中粘贴富文本,但它不会保留在第三个屏幕上,一切都变得像纯文本。 2.我不知道如何在数据库中存储富文本并以相同的格式检索。 我在这里附上我的 XSL 示例。 如果您需要任何其他信息,请告诉我。提前致谢!
XSL 2nd Screen
<table border="0" cellspacing="1" cellpadding="1" class="graphtable">
<tr>
<xsl:choose>
<xsl:when test="//faml/response/stresponsedto/security_tips">
<xsl:for-each select="//faml/response/stresponsedto/security_tips/stdto">
<td>
<div class="carousel" contenteditable="true" id="post-text">
<xsl:value-of select="securitytips"/>
</div>
</td>
</xsl:for-each>
</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</tr>
</table>
XSL 3rd Screen
<table border="0" cellspacing="1" cellpadding="1" class="graphtable">
<tr>
<td class="headingalign" width="10%" >Security Tips</td>
</tr>
<tr>
<td style="padding-right: 10px">
<div class="carousel">
<xsl:value-of select="//faml/request/fldsandt"/>
</div>
</td>
</tr>
</table>
如果您将“富文本”保存为 xhtml 格式的内容,您或许能够实现这一点。 xhtml 是 html 也是格式良好的 xhtml。
如果您的内容是
<securitytips>
<p>some text with a <b>bold section</b> in it.</p>
</securitytips>
output 的值,在 XSL 中就像这样
<xsl:value-of select="securitytips" />
只会给你文字:
一些带有粗体部分的文本。
但是,如果您使用副本,您将获得整个元素,并保留标记,即:
<xsl:copy-of select="securitytips" />
会给你文字和标记
<p>some text with a <b>bold section</b> in it.</p>
这可能会变得很棘手,因为如果您的 html 格式不正确(例如标签未关闭),那么您将无法对其进行转换。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.