【问题标题】:Indent content in richtext field in xPages缩进 xPages 中富文本字段中的内容
【发布时间】:2016-09-20 09:01:41
【问题描述】:

我的用户想要缩进富文本字段中的内容。我尝试使用 CkEditor 但它不起作用。当我保存文档时,标识消失了。 我为制表键(config.tabSpaces = 4)添加了一个空格,但这不满足用户,因为这不是一个真实的身份。 然后我尝试使用 RichText dojo 字段。看起来效果很好,但是当我打印文档时,会打印“blockquote”的行。

有人知道解决办法吗??

谢谢!!

【问题讨论】:

  • 跟我说吧:互联网上没有富文本。它是 HTML。 HTML 不计算空格。如果你想创建类似块引用的东西,请使用带有 margin-left 的 CSS 样式。
  • 我们将“格式化文本”存储为我们的 Cloudant 数据库中的 HTML,这非常顺利。所以像 Stephan 提到的那样走 HTML 路线,最后得到 css
  • 感谢您的回答。但我还有另一个问题。用户从 M.Word 复制和粘贴文本,当他们这样做时,格式化的文本会丢失。

标签: dojo ckeditor xpages rich-text-editor xpages-extlib


【解决方案1】:

默认情况下,通过 XPage 输入的任何可能嵌入恶意/恶意代码(例如 html / javascript)的输入都会通过 ACF(活动内容过滤器)运行

这发生在 XPages 运行时服务器端。 (您可能会注意到 CKEditor 本身也有此功能,但在 XPages 的情况下,CKEditor 不进行过滤,它是在 IBM 的 ACF 系统中的服务器端执行的。)

更多信息available here

由于某种原因,默认过滤规则也会过滤掉“margin”样式属性。这意味着当您的用户提交缩进文本时,在保存到文档之前,边距会在服务器端被剥离。

如果您设置了 htlmFilterIn="identity",那么您的系统将不再进行任何过滤,并且将保留边距。但是,您的系统现在很容易受到攻击。

另一个想法是提供一组自定义规则,其中边距不会被剥离。执行此操作的详细信息在 Mastering XPages 书中。但是你基本上把/properties目录下的acf-config.xml.sample,重命名为acf-config.xml,然后修改。 (这将在服务器范围内执行)

【讨论】:

  • 它工作正常,但最后我们必须设置两个属性:如你所说的 htlmFilterIn="identity" 和 htlmFilter="identity"。谢!! ;-)
猜你喜欢
  • 2015-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多