java - 如何在 Vaadin TextField 中呈现 html 内容

标签 java vaadin-flow

我想做的事情非常简单:在 TextFieldTextArea 中渲染 html 标签。

但是google了半天,我很惊讶的发现Vaadin好像不支持。Vaadin ComboBox 或者 ListBox 提供了.setRender( ) 方法以我想要的任何方式呈现内容。但是 TextFieldTextArea 没有这样的功能。我想知道有什么办法可以做到这一点?

Vaadin TextField 支持自定义主题,但在渲染时没有生效。

textArea.addThemeVariants(TextAreaVariant.MATERIAL_ALWAYS_FLOAT_LABEL);

最佳答案

TextField 和 TextArea 是编辑纯文本的字段。

如果要显示html内容,有Html component在流程中做到这一点。

如果你想编辑 html 内容有单独的 RichTextEditor因为这样做。

此外,如果您允许用户输入 html,请记住在显示之前清理 html,例如Jsoup 以避免 xss,即 JavaScript 注入(inject)问题。

关于java - 如何在 Vaadin TextField 中呈现 html 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56375179/

相关文章:

javascript - Vaadin 14 Springboot javascript 不工作

vaadin - 为什么自定义实现的 VaadinServiceInitListener 没有在 vaadin 13.0.2 中监听?

java - vaadin 14 中复制到剪贴板组件

java - 如何在 AWS 而不是本地获取 dynamodb 的主机名?

java - 应用隐藏时如何发送和接收数据?

java - 针对 Tomcat 5.5 库编译 Web 应用程序并在 Tomcat 6 上部署

css - 在 Vaadin Flow Web 应用程序中动态更改字体、字体大小、字体颜色等

java - Clojure - 找不到匹配的方法

java - 如何在java中用*替换控制台输入值?

vaadin-flow - 如何在 Vaadin Flow 中设置 FormLayout 的标签宽度?