我可以通过 note.Remove() 轻松删除元素,如下所示:
HtmlDocument html = new HtmlDocument();
html.Load(Server.MapPath(@"~\Site\themes\default\index.cshtml"));
foreach (var item in html.DocumentNode.SelectNodes("//removeMe"))
{
item.Remove();
}
但这也删除了 innerHtml。 如果我只想删除标签并保留 innerHtml 怎么办?
例子:
<ul>
<removeMe>
<li>
<a href="#">Keep me</a>
</li>
</removeMe>
</ul>
任何帮助将不胜感激:)
最佳答案
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);
var node = doc.DocumentNode.SelectSingleNode("//removeme");
node.ParentNode.RemoveChild(node, true);
关于c# - Html Agility Pack - 删除元素,但不删除 innerHtml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12092575/