java - jmesa 将 html 呈现为文本

标签 java javascript html jmesa

我在Java中使用jmesa,直接使用tableModel.render()来直接获取HTML。结果列表中的一些 Web 对象包含 HTML - 示例:

class blah {
    String email;
    public String getEmailLink() {
      return "<a href='" + email + "</a>"
    }
}

在我的 Java 代码中,我会这样做:

htmlRow.addColumn(new HtmlColumn("emailLink"));

jmesa 正在将其呈现为文本。我如何告诉 jmesa 将文本按原样呈现为文档中的 html?

TIA

最佳答案

查看the JMesa soure code , HtmlCellEditor自动转义 HTML。

我还没有测试过它,但你应该能够覆盖默认的 HtmlCellEditor具有不同的类型...例如简单的 BasicCellEditor 。不应该有太多额外的代码:

HtmlColumn emailLinkColumn = new HtmlColumn("emailLink");
emailLinkColumn.setCellEditor(new BasicCellEditor());
htmlRow.addColumn(emailLinkColumn);

所有这一切的另一个选择是创建一个自定义 CellEditor 并让它创建您的 <a>为您标记而不是在您的 bean 中执行此操作。 This page如果您想走这条路,应该可以帮助您开始使用自定义 CellEditors。

顺便说一句,如果您只是弄乱单元格内的值,请覆盖/替换 CellEditor可能就是您所需要的( CellEditor 它类似于 <td> 的主体)。 CellRenderer涉及整个单元格(类似于 <td> 及其内容)。

关于java - jmesa 将 html 呈现为文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12873461/

相关文章:

java - 使用 Apache CSVParser 获取不以科学计数法表示的数字

javascript - jQuery Div 在每次追加后向下滚动

javascript - 如何显示日期图标消息(点击打开日期日历)工具提示

由于边框折叠属性,HTML 表格有一条奇怪的粗体水平线

javascript - CSS flex 盒 : Make All Items same Size without Clipping

javascript - 用加载在所述div中的外部文件中的外部文件替换div内容

java - 如何在 Maven 3 插件中获取依赖树?

java - 是否可以从 .class 文件中获取注释的行号?

java - 将文件数组与字符串数组共同链接

javascript - onchange 中的 onchange 不起作用