我正在嘗試使用HTML Agility Pack將腳本元素附加到我的html的HEAD部分的頂部。我迄今看到的例子只是使用AppendChild(element)
方法來實現這一點。我需要將附加到頭部的腳本放在其他腳本之前。我怎樣才能指定這個?HTML Agility Pack - 如何在head元素的頂部添加元素?
這裏就是我想:
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\"}'";
我想朝着頭,而不是附加在末尾的頂端增加了一個腳本標籤。
旁註其他人發現這個問題:'stateScript.InnerHtml = ...'有時會做你的javascript的奇怪的東西。要解決這個問題,你可以改爲'stateScript.AppendChild(htmlDocument.CreateTextNode(scriptText));' – jp36 2012-04-02 16:11:16