HtmlAgilityPack出现异常"无法创建多个节点元素。"

10

我有一些输入标签,它们是占位符,我正在用一些HTML替换它们。我使用以下代码创建HTML节点,以下是代码片段。但是当没有多个节点时,它会出现“无法创建多个节点元素”的错误。

我有一些占位符输入标记,我使用以下代码将其替换为某些HTML: ``` document.createRange().createContextualFragment(htmlString); ``` 但是,当只有一个节点时,它将抛出“无法创建多个节点元素”的错误。
string tempString = "<p style="margin-left:0px;margin-right:0px;text-indent:0px;text-align:justify;">(c)<span style='display: inline-block; width: 30px; min-width: 30px;'>&nbsp;</span><span class='noCount4'> </span>paragraph <span class="Ellh_">(a)<span class='noCount-44'> </span>&nbsp;of Clause <span class='noCount-48'> </span><span class="Ellj_">25.3<span class='noCount-44'> </span>&nbsp;(<span class='noCount-49'></span> </span><i>Other obligations</i>) as a result of an <span class="El2d_">Obligor </span>failing to comply with its obligations under Clause <span class="Ellm_">24.22<span class='noCount-44'> </span>&nbsp;(<span class='noCount-50'></span> </span><i><span class="El2e_">Financial Indebtedness</i></span>);<span class='noCount-1'> </span></span></p>"

HtmlNode tempNode = HtmlNode.CreateNode(tempString);
HtmlNode.CreateNode(tempString) 出现错误 "无法创建多个节点元素"。
有人能告诉我这里出了什么问题吗?
1个回答

13

"创建多个节点元素是不可行的"这种说法是正确的,但这可能会产生误导。HtmlNode.CreateNode()仅支持单个节点的HTML,即只能有一个外部容器节点。

请更改此内容......

<p>
    blah blah...
</p> 
<span>
    More stuff... 
</span>

进入其中...

<div>
   <p>
      blah blah...
   </p>
   <span>
      More stuff...
   </span>
</div>

非常感谢。在找到这个答案之前,我一直在考虑将所有标签拆分为HtmlNode.CreateNodes以避免出现此错误!幸运的是我谷歌了一下。 - Bob

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接