你好,我试图在文档根元素中插入一个新的子元素,如下所示:
Document doc = Jsoup.parse(doc); Elements els = doc.getElementsByTag("root"); for (Element el : els) { Element j = el.appendElement("child"); }
在上面的代码中,文档中只有一个根标签,所以本质上循环将只运行一次.
无论如何,该元素作为根元素“root”的最后一个元素插入.
有没有办法我可以插入一个子元素作为第一个元素?
例:
<root> <!-- New Element must be inserted here --> <child></child> <child></chidl> <!-- But it is inserted here at the bottom insted --> </root>
解决方法
看看这是否有助于您:
String html = "<root><child></child><child></chidl></root>"; Document doc = Jsoup.parse(html); doc.select("root").first().children().first().before("<newChild></newChild>"); System.out.println(doc.body().html());
输出:
<root> <newchild></newchild> <child></child> <child></child> </root>
要解密,它说:
>选择根元素抓住第一个根元素抓住该根元素上的孩子抓住第一个孩子>那个孩子之前插入这个元素