【问题标题】:HtmlAgilityPack adding div elements to existing html fileHtmlAgilityPack 将 div 元素添加到现有的 html 文件
【发布时间】:2016-05-24 04:16:34
【问题描述】:

这是我的原始 html:

 <tr>
    <td style="padding-left: 40pt;"><font style="background-color: lightgreen" color="black">Tove</font></td>
    <td style="padding-left: 40pt;"><font style="background-color: lightgreen" color="black">To</font></td>
 </tr>

而我的目标是拥有这个:

<div class="select-me" /> <tr>...<tr/> 

我正在使用 HtmlAgilityPack 并基本上检查每个字体标签并检查它的样式是否为浅绿色。但我不确定如何跳转到表格行标签并在表格行标签周围放置一个 div 标签。

【问题讨论】:

标签: c# html xml


【解决方案1】:

您可以使用以下代码将它们用 div 包装起来:

foreach(var node in selectMe)
    node.ParentNode.OuterHtml = "<div class=\"select-me\">" + node.ParentNode.InnerHtml + "</div>";

你也可以用这个选择selectMe,而不是一一检查:

var selectMe = doc.DocumentNode.SelectNodes("//td[contains(@style,'background-color: lightgreen')]");

【讨论】:

  • 对于这行代码“node.ParentNode.OuterHtml”,我收到错误消息“无法将属性或索引器 'HtmlNode.OuterHtml' 分配给 -- 它是只读的。跨度>
  • @ErvinWu 试试这个:node.ParentNode.InnerHtml = "&lt;div class=\"select-me\"&gt;" + node.ParentNode.OuterHtml + "&lt;/div&gt;";
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-11-20
  • 2012-10-08
  • 1970-01-01
  • 1970-01-01
  • 2022-01-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多