[英]How to keep link title attribute with jsoup?
使用Jsoup.clean()
,jsoup可以从以下位置转换HTML链接的title
属性:
<a href="" title="test <br />">TEST</a>
变成:
<a href="" title="test <br />">TEST</a>
这是演示应用程序:
Whitelist whitelist = new Whitelist();
whitelist.addTags("a");
whitelist.addAttributes("a", "href", "title");
String input = "<a href=\"\" title=\"test <br />\">TEST</a>";
System.out.println("input: " + input);
String output = Jsoup.clean(input, whitelist);
System.out.println("output: " + output);
打印:
input: <a href="" title="test <br />">TEST</a>
output: <a href="" title="test <br />">TEST</a>
我试图用EscapeMode
添加OutputSettings
:
OutputSettings outputSettings = new OutputSettings();
outputSettings.escapeMode(EscapeMode.xhtml);
EscapeMode.base
和EscapeMode.extend
无效。 EscapeMode.xhtml
显示以下内容:
input: <a href="" title="test <br />">TEST</a>
output: <a href="" title="test <br />">TEST</a>
知道jsoup如何不操作title
标签吗?
这是一个已知的问题/行为: https : //github.com/jhy/jsoup/issues/684 (由jsoup团队标记为“无法解决”)。
这里没有错误。
进行序列化时(即在您的示例中,当您打印出XML / HTML时),我们转义了尽可能少的字符。 这就是为什么>不转义为>的原因。 因为它在带引号的属性中,所以没有任何疑问,因为它正在关闭标签,因此不会被转义。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.