我在一个基于jsoup的html模板引擎上工作。 如果元素不在表中,则JSOUP忽略th和td标志;
为了解决这个问题,我将解析器更改为:
final Document docToWrite = Jsoup.parse(docToRead.outerHtml(),"", Parser.xmlParser());
但我没有找到任何解决方案来填充包含td或th的html元素:
element.html("<th>test</th>");
仅返回测试,因为JSOUP通过删除未使用的标签来清理html
我该如何解决这个问题?
谢谢
答案 0 :(得分:0)
如果你的元素是'th',那么调用:
element.html("<th>test</th>") // th.innerHTML = "<th>test</th>"
应该生成脏的html:
<th><th>test</th></th>
由JSoup正确清除:
<th>test</th> // th.innerHTML == "test"
使用innerHTML填充元素==“&lt; th&gt; test&lt; / th&gt;”你的元素必须是&lt; tr&gt;标签
// Given
String s = "<th>test</th>";
assert element.tag() == "tr";
// When
element.html(s);
// Then
assert element.html().equals(s);