1

Orbeon 中有没有办法将 TextAreas 和 RTEs 保存为 CDATA 部分,以便保留用户输入的换行符和其他格式?在某些用例中,不要更改用户输入的内容非常重要,但迄今为止我还没有找到实现此目的的方法。

谢谢!

4

1 回答 1

2

通常,默认情况下应保留格式和换行符。如果修改了输入,则可能存在三个“罪魁祸首”:RTE 组件本身、Tagsoup 和 clean-html.xsl。RTE 组件有一些限制(AFAIK orbeon 仍然使用 YUI 2),例如它不能正确处理 p 元素。Tagsoup 和 clean-html.xsl 应该允许大多数标准 html 元素通过,但它们会过滤,例如,canvas 元素。有关 orbeon 的 RTE 元素的更多信息:

http://wiki.orbeon.com/forms/doc/developer-guide/xforms-controls/textarea-control#TOC-Rich-text-editor-HTML-editor-

因此,如果到达您的 xforms 实例的内容被修改,您将需要调试每个处理步骤以检查修改发生的位置。

如果这是 RTE 组件的问题,您可以尝试检查 TinyMCE XBL 组件是否更适合您(它使用 TinyMCE 而不是 YUI2 RTE - 我几个月前在 ops-users ML 中发布了它)。如果是 Tagsoup 问题,则必须修补源代码(更改 Tagsoup 配置);还有一种解决方法可以使用外部配置文件配置 Tagsoup(它也应该在 ML 档案中可用)。如果是 clean-html.xsl 问题,您可以轻松创建自己的 clean-html.xsl,它在 wiki 页面(见上文)HTH fs 中有描述

于 2011-06-05T08:20:48.300 回答