1

鉴于以下...

HtmlNode myDiv = doc.DocumentNode.SelectSingleNode("//div[@id='someid']");

...生成的myDiv.InnerHtml包含:

<span>...other content I want to consume...</span>
<a href="http://www.somewhere.com" onmousedown="return somefunc('random','parm','values','SHXA213')">Click Me</a>
<span>...and more content I want to consume...</span>

有没有办法选择锚标签的onmousedown部分?

解决方案
我需要做的是:

HtmlNodeCollection anchors = myDiv.SelectNodes(@"//a[@class='someclass']");
anchors[0].SetAttributeValue("onmousedown", "");

// could have also used anchors[0].Attributes.Remove() or .RemoveAt()
4

1 回答 1

0

有没有办法不选择锚标签的 onmousedown 部分?

不,不使用 XPath ( SelectSingleNode)。

XPath 是一种查询语言,它不能修改由 XPath 表达式选择的节点。您需要一种额外的语言(DOM 或 XSLT)来更改节点(例如剥离属性)。

于 2010-06-19T00:47:18.597 回答