HTMLアジャイルパックはすべての入力フィールドを取得します

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");

してください、誰かが私を助けることができます、私はインターネット上でこれに関する情報を見つけることができないようです:(。

受け入れられた回答

XPathセレクタを//inputに変更して、すべての入力ノードを選択します。

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

人気のある回答

あなたの現在のコードは、すべてa要素( href属性を持つ)を選択しましa"//a[@href]"

すべてのinput要素を選択するinputます: "//input"

もちろん、ループの内側は、探しているものに合わせて変更する必要があります。

私はあなたがXPathで読むことをお勧めします。



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow