HTML Agility Pack获取所有输入字段

时间:2012-09-25 10:39:14

标签: c# html-agility-pack

我在互联网上找到了一些代码,找到了所有href代码并将其更改为google.com,但我怎样才能告诉代码找到所有input字段并将自定义文字放入那里?

这是我现在的代码:

HtmlDocument doc = new HtmlDocument();
doc.Load(path);
foreach (HtmlNode link in doc.DocumentNode.SelectNodes("//a[@href]"))
{
    HtmlAttribute att = link.Attributes["href"];
    att.Value = "http://www.google.com";
}
doc.Save("file.htm");

拜托,有人可以帮助我,我似乎无法在互联网上找到任何关于此的信息:(。

2 个答案:

答案 0 :(得分:6)

将XPath选择器更改为//input以选择所有输入节点:

foreach (HtmlNode input in doc.DocumentNode.SelectNodes("//input"))
{
    HtmlAttribute att = input.Attributes["value"];
    att.Value = "some text";
}

答案 1 :(得分:2)

您当前的代码选择了所有a元素(具有href属性):"//a[@href]"

您希望它选择所有input元素:"//input"

当然,循环的内部部分需要更改以匹配您要查找的内容。

我建议你阅读XPath