我尝试使用以下方式设置InnerText,但不允许设置InnerText属性:
node.InnerText = node.InnerText.Remove(100) + "..";
这是因为我只想删除文本,而不是实际元素:
<div>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
<img src="" />
</div>
我尝试使用以下方式设置InnerText,但不允许设置InnerText属性:
node.InnerText = node.InnerText.Remove(100) + "..";
<div>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
<img src="" />
</div>
我刚刚也遇到了同样的问题。虽然文档说可以获取或设置,但实际上是只读的。不过 inner text 适用于标签之间的所有内容。所以如果你有成百上千个子元素,它们所有的文本包括实际的标签都会在其中。我认为为了达到我们想要的效果,我们需要使用 Text 属性。获取实际标签并使用 Text 属性。
因此,可能需要这样做:
HtmlTextNode.Text = "";
HtmlNode.Parent.Remove(textTagYouWantRemoved, true);