我正在尝试将div
替换为另一个div
,但似乎不起作用。
有什么建议么?
如果您想尝试,我在提琴上有一个副本: https://dotnetfiddle.net/A5a6I0
public class Program
{
public static void Main()
{
var html =
@"<div id='div1'> hello </div>";
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(html);
Console.WriteLine("\n****Before child node replaced****\n");
Console.WriteLine(htmlDoc.Text);
HtmlNode oldChild = htmlDoc.DocumentNode.SelectSingleNode("//div[@id='div1']");
HtmlNode newChild = HtmlNode.CreateNode("<h2> This is h2 new child heading</h2>");
Console.WriteLine("Node Name: " + oldChild.Name);
oldChild.ParentNode.ReplaceChild(newChild, oldChild);
Console.WriteLine("\n****After child node replaced****\n");
Console.WriteLine(htmlDoc.Text);
}
}
答案 0 :(得分:0)
HTMLAgilityPack更新text属性似乎存在一些问题和潜在的错误。
我可以通过将htmlDoc.Text
替换为htmlDoc.DocumentNode.OuterHtml
来使其工作。