在 java 代码中使用 PolicyFactory.sanitize 后,<tr> 和 <table> 标签中没有 HtmlPolicyBuilder 样式

问题描述

<tr onClick="toggleTable('*****')" style=";cursor:pointer ">
<tr bgcolor="#B7C3F7" id="*****" style="display:table">
<table bgcolor="#8DA0F8" id="*****" style="display:none">
<table bgcolor="#8DA0F8" id="*****" style="display:none">

清理 html 页面后,样式属性不在 table 和 tr 元素下。净化的 HTML 是这样的:

<tr onclick="toggleTable('*****')">
<tr bgcolor="#B7C3F7" id="*****">
<table bgcolor="#8DA0F8" id="*****">
<table bgcolor="#8DA0F8" id="*****">

下面是我试图在 tr 和 table 元素下允许 style 属性代码片段:

PolicyFactory html = new HtmlPolicyBuilder()
.allowElements("table","tr")
.allowAttributes("style","id","bgcolor").onElements("table")
.allowAttributes("bgcolor","onClick","style","id").onElements("tr")
.allowAttributes("style").globally()
.toFactory(); 
  • 我面临的另一个问题是,经过清理的 html 页面中出现了额外的 tableli 标签

任何建议/帮助表示赞赏。提前致谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)