首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MS-Word 2010无法对HTML实体进行转义,例如

MS-Word 2010无法对HTML实体进行转义,例如
EN

Stack Overflow用户
提问于 2016-05-04 13:25:34
回答 1查看 154关注 0票数 0

当我升级到struts2-core-2.3.28.1.jar和ognl-3.0.14.jar时,MS-Word不能识别一些特殊的perfect.But字符,比如被更高版本的struts open.Because <s:property>转义为&mdash; jar.But MS-Word无法识别&mdash;。例如,我在数据库表中有一个名为"nameAndURL“的字段,其中包含带有url的”-“字符串,如下所示:

代码语言:javascript
复制
vincent—http://localhost/a/http.action?dataFormat=html&amp;ymdhms=20130101000000

由于某些原因,我无法将我的数据转换为:

代码语言:javascript
复制
vincent&mdash;http://localhost/a/http.action?dataFormat=html&amp;ymdhms=20130101000000

或者:

代码语言:javascript
复制
vincent—http://localhost/a/http.action?dataFormat=html&ymdhms=20130101000000

jsp代码:

代码语言:javascript
复制
<s:iterator value="nameAndURL">
    <w:p wsp:rsidR="00AA5956" wsp:rsidRDefault="00571D82">
        <w:pPr>
            <w:ind w:left="426" w:first-line-chars="0" w:first-line="0" />
            <w:jc w:val="left" />
        </w:pPr>
        <w:r>
            <w:rPr>
                <wx:font wx:val="宋体" />
                <w:sz w:val="18" />
                <w:sz-cs w:val="18" />
            </w:rPr>
            <w:t><s:property escapeHtml="true"/></w:t>
        </w:r>
    </w:p>
</s:iterator>

问题是,当我使用<s:property value="nameAndURL" escapeHtml="true"/>时,字符会转义为&mdash; MS-Word无法识别。MS-Word的错误代码就像这样:

代码语言:javascript
复制
<w:r>                                                                                     
    <w:t>vincent&mdash;http://localhost/a/http.action?dataFormat=html&amp;ymdhms=20130101000000</w:t>
</w:r>

但是如果我尝试使用<s:property value="nameAndURL" escapeHtml="false"/>,字符“-”将是 MS-Word可以识别的非转义字符,但&amp;将是非转义字符,因为& MS-Word不能recognize.The错误的MS-Word代码,就像这样:

代码语言:javascript
复制
<w:r>                                                                                     
    <w:t>vincent—http://localhost/a/http.action?dataFormat=html&ymdhms=20130101000000</w:t>
</w:r>

如何使MS-Word能够识别&mdash;&?或者如何让<s:property>不转义而转义&amp?为什么在我升级到struts2- &mdash; -2.3.28.1.jar和ognl-3.0.14.jar之后,“-”作为核心转义?谢谢你的回答。

EN

回答 1

Stack Overflow用户

发布于 2016-05-04 16:18:51

如果您只想转义&,我建议您在操作中(或在业务层中)使用do it服务器端,而不在页面中转义其余部分。

但是,这样做不太安全,因此您至少应该剥离<script>块。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37019146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档