我想使用HTML Agility Pack将一个脚本元素添加到我的HTML头部的顶部。到目前为止,我看到的示例只是使用AppendChild(element)
方法来实现这一点。我需要将我要附加到头部的脚本放在其他某些脚本之前。我该如何指定它的位置呢?
以下是我的尝试:
HtmlDocument htmlDocument = new HtmlDocument();
htmlDocument.Load(filePath);
HtmlNode head = htmlDocument.DocumentNode.SelectSingleNode("/html/head");
HtmlNode stateScript = htmlDocument.CreateElement("script");
head.AppendChild(stateScript);
stateScript.SetAttributeValue("id", "applicationState");
stateScript.InnerHtml = "'{\"uid\":\"testUser\"}'";
我希望将脚本标签添加到HEAD的顶部,而不是追加到末尾。
stateScript.InnerHtml=...
有时会对您的JavaScript产生奇怪的影响。为了解决这个问题,您可以改为使用stateScript.AppendChild(htmlDocument.CreateTextNode(scriptText));
。 - jp36