Jsoup 添加一个元素

Jsoup 添加一个元素

官方文档说明:https://jsoup.org/apidocs/org/jsoup/nodes/Element.html
首先, 使用 Jsoup 解析一个html文档:

// 使用 Jsoup 解析得到文档对象
Document document = Jsoup.parse("<!DOCTYPE HTML>\n" +
                "<html>\n" +
                "    <head>\n" +
                "        <title>Hello World!</title>\n" +
                "    </head>\n" +
                "    <body>\n" +
                "        <div id=\"div1\">This is div1</div>\n" +
                "    </body>\n" +
                "</html>");

使用 appendElement(String tagName) 方法, 将会将这个标签添加到当前选择元素的最后面, 也可以在添加这个标签的同时设置标签的属性。

// 选取第一个标签名为 “head” 的元素
Element element = document.selectFirst("head");

// 添加一个 <script>  标签到 <head> 标签的最后面
element.appendElement("script");

/* 添加一个 <script> 的标签, 同时设置对应的属性, 
   type="text/javascript", 标签内的内容为 
   “console.log("Hello World!")”
*/
element..appendElement("script")
                .attr("type", "text/javascript")
                .text("console.log(\"Hello World!\")");

选择“head”标签, 查看标签内的内容:

// 获取文档对象内的所有标签
Elements elements = document.getAllElements();
// 选择 head 标签, 输出对应内容
System.out.println(elements.select("head").toString());

结果如下:
在这里插入图片描述
同样的,
appendChild(Node dhild) 添加一个元素作为自己的子标签

// 创建一个标签
Element element = new Element("script");
// 设置对应属性
element.attr("type", "text/javascript").text("console.log(\"Better !!\")");
// 找到第一个“head” 标签, 将新创建的标签添加为到自己的子标签
document.selectFirst("head").appendChild(element);

appendTo​(Element parent) 将自身添加到父节点标签之后作为它的子标签

// 创建一个标签
Element element = new Element("script");
// 设置对应属性
element.attr("type", "text/javascript").text("console.log(\"Better !!\")");
// 将自身添加到第一个“head”标签之后作为它的子标签
element.appendTo(document.selectFirst("head"));

append​(String html)直接添加 HTML 内容作为自己的子标签

// 直接添加 HTML 内容到第一个 “head” 标签内作为子标签
document.selectFirst("head").append("<script type=\"text/javascript\">" +
                "console.log(\"append Better !!\")</script>\n");
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值