1

一段时间以来,有人报告我负责的软件存在问题。我会尽可能详细地解释它(对不起,如果我的英语对你来说似乎很糟糕^^')。

上下文:该软件已开发为 Web 应用程序 (Java EE) + 框架 Vaadin 6(不是 7)。由于这个项目存在大约 4 或 5 年,使用的技术不是最新的,但目前还可以。该软件由我们的内部客户使用,因此每天约有 70 名用户使用它。我现在负责这个项目9个月了。

问题:通常,用户从其他来源(如 Word 文档或 PowerPoint)复制一些信息(单词、表格等)。然后将其粘贴到 RichTextArea 中。然后他们将所有这些信息导出到 Excel (XLS) 文件中。但有时,这些粘贴的信息不会被报告,或者会生成一些 HTML 标签(大多数用户无法理解)。

我的建议:RichTextArea 有一些工具,用按钮显示,其中之一是“删除格式”,如果他们按下它,一切都会好起来的。但我不得不同意他们的观点,使用起来并不直观和“友好”。因为他们是我的客户,所以我想尽可能地帮助他们。

我想要什么:如果他们将粘贴复制到 RichTextArea 中,我想要:

  • 应该邀请他们通过按下“删除格式”按钮来删除格式(粘贴通知),所以我应该对其进行评估。
  • 或者在粘贴时自动应用删除格式。

但是我无法实现这些解决方案,因为我不知道如何检测粘贴操作,此外,对于第二种解决方案,我无法在代码上检索删除格式化操作。

你能帮我实现这个吗?任何不涉及其他技术的提示将不胜感激:)

艾娜特

4

1 回答 1

0

如果这仍然相关:

不确定第一种方法。但是我首先想到的是使用通常的更改事件。当用户粘贴新文本时,将通知您值已更改。然后使用任何工具来清理 HTML并获取简单的文本(我建议使用类似jsoup的东西,因为它是最简单的东西)。或者,如果您需要特定的东西,请实现您自己的解析器/清理器。最后一件事是简单地将新文本设置为当前区域值

否则,您可以使用可能提供此类信息的 Vaadin 插件。只需寻找 CKEditor 或 TinyMCE 编辑器的附加组件存储库

于 2017-05-22T19:38:04.777 回答