HtmlAgilityPack删除节点(thead)不工作



想要删除一个完整的thead(包括th(。为什么这不起作用?我尝试过其他标签,但都没有结果,结果文本是一样的。好像没有什么变化。

<table>
<thead>
<tr>
<th>Hora</th>
<th>Estado</th>
<th>Motivo</th>
<th>Local</th>
<th>Recetor</th>
</tr>
</thead>
</table>

c#代码

doc.LoadHtml("<table><thead><th>Hora</th><th>Estado</th><th>Motivo</th><th>Local</th><th>Recetor</th></thead></table>");
var nodes = doc.DocumentNode.SelectNodes("//thead").ToList();
foreach (var node in nodes) {
node.Remove();
}
txtResults.Text=doc.Text;

HtmlDocument.Text属性的描述非常不清楚:

HtmlDocument文本。如果你修改它,要小心。

从观察到的行为来看,当您修改html文档时,此属性似乎不会更新。因此,请改用doc.DocumentNode.OuterHtml


更新:从ParsedText属性实现来看,Text应该保存原始的未修改的解析文本:

public string ParsedText
{
get { return Text; }
}

但这甚至不是只读属性——它是一个公共字段,任何人都可以随时修改。所以我不会相信HtmlDocument.Text的描述。

最新更新