删除 html 敏捷包中的单亲子节点
Remove node of single child parent in html agility pack
我正在使用 Html Agility Pack (1.4.9.5) 删除指定 class 中的节点:
var document = new HtmlDocument();
document.LoadHtml("<p><div class=\"remove-it\"></div></p>");
var nodesToRemove = document.QuerySelectorAll(".remove-it");
if (nodesToRemove != null)
{
foreach (var node in nodesToRemove)
{
node.Remove();
}
}
var res = document.DocumentNode.OuterHtml;
问题是最后 res
等于:
<p>
但应该是:
<p></p>
我该如何解决这个问题?
快到了!你不见了
HtmlNode.ElementsFlags["p"] = HtmlElementFlag.Closed;
在 document.LoadHtml("<p><div class=\"remove-it\"></div></p>");
.
之前
这样做的目的是在解析文档时自动关闭p
元素。
我正在使用 Html Agility Pack (1.4.9.5) 删除指定 class 中的节点:
var document = new HtmlDocument();
document.LoadHtml("<p><div class=\"remove-it\"></div></p>");
var nodesToRemove = document.QuerySelectorAll(".remove-it");
if (nodesToRemove != null)
{
foreach (var node in nodesToRemove)
{
node.Remove();
}
}
var res = document.DocumentNode.OuterHtml;
问题是最后 res
等于:
<p>
但应该是:
<p></p>
我该如何解决这个问题?
快到了!你不见了
HtmlNode.ElementsFlags["p"] = HtmlElementFlag.Closed;
在 document.LoadHtml("<p><div class=\"remove-it\"></div></p>");
.
这样做的目的是在解析文档时自动关闭p
元素。