现有的HTMl文件
<a href="http://google.com">Link</a>
喜欢将其转换为:
<a href="#" onclick="openFunction('http://google.com')">Link</a>
使用JSoup Java库可以完成许多花哨的解析。但是无法找到像上面要求那样添加属性的线索。请帮忙。
答案 0 :(得分:2)
要设置属性,请查看the doc
<meta name="viewport" content="width=device-width, initial-scale=1">
会改变:
String html = "<html><head><title>First parse</title></head>"
+ "<body><p>Parsed HTML into a doc.</p><a href=\"http://google.com\">Link</a></body></html>";
Document doc = Jsoup.parse(html);
Elements links = doc.getElementsByTag("a");
for (Element element : links) {
element.attr("onclick", "openFunction('"+element.attr("href")+"')");
element.attr("href", "#");
}
System.out.println(doc.html());
到
<a href="http://google.com">
答案 1 :(得分:2)
使用Element#attr
。我只是使用了一个循环,但你可以随心所欲地完成它。
Document doc = Jsoup.parse("<a href=\"http://google.com\">Link</a>");
for (Element e : doc.getElementsByTag("a")){
if (e.text().equals("Link")){
e.attr("onclick", "openFunction('http://google.com')");
System.out.println(e);
}
}
<a href="http://google.com" onclick="openFunction('http://google.com')">Link</a>