내가 div의 끝 직후에 내 자신의 HTML 중 일부를 삽입하려고 노력하고있어. 이 div에는 다른 div가 있습니다.
Dim HtmlNode As HtmlNode = HtmlNode.CreateNode("<span class=""label"">Those were the friends</span>")
Dim FriendDiv = htmldoc.DocumentNode.SelectSingleNode("//div[@class='profile_friends']")
Dim NewHTML As HtmlNode = htmldoc.DocumentNode.InsertAfter(HtmlNode, FriendDiv)
내가 그 코드를 실행할 때마다 예외 Node "<div class="profile_topfriends"></div>" was not found in the collection
XmlNode
의 InsertAfter()
와 InsertAfter()
메소드를 참조 된 노드의 공통 부모에서 호출하고 삽입 된 노드가되어야합니다. 다음과 같이 시도해보십시오.
Dim NewHTML As HtmlNode = FriendDiv.ParentNode.InsertAfter(HtmlNode, FriendDiv)
나를 위해 잘 일했다. 다음은 C # (VB로 번역)에서 수행 한 간단한 테스트입니다.
Dim html = "<body><div></div></body>"
Dim doc As New HtmlDocument()
doc.LoadHtml(html)
Dim div = doc.DocumentNode.SelectSingleNode("//div")
Dim span = HtmlNode.CreateNode("<span class=""label"">Those were the friends</span>")
Dim newHtml = div.ParentNode.InsertAfter(span, div)
Console.WriteLine(XDocument.Parse(doc.DocumentNode.OuterHtml).ToString())
<span>
<div>
은 콘솔의 <div>
뒤에 나타납니다.