2506 次
2 に答える
3
奇妙な理由で、HtmlAgilityPack はこれらのタグを正しく処理しないため、これで問題を解決できました。
// Iterating over nodes to build the dictionary
foreach (HtmlNode city in citiesNodes)
{
if (city.NextSibling != null)
{
string key = city.NextSibling.InnerText;
string value = city.Attributes["value"].Value;
citiesHash.AddCity (key,value);
}
}
NextSimbling
ノードに直接到達する代わりに、前のシンブリングからの参照を使用して、各ノードの値を取得することができました。
于 2012-12-20T17:21:37.527 に答える
0
これを試すこともできます。別のことを試す必要がある他の人のために(答えは私にとってはうまくいきませんでした)、親から子ノードを参照するだけになりました:
HtmlNode.ElementsFlags.Remove("option"); // need this before you do anything with HAP
var options = htmlDoc.DocumentNode.SelectNodes("//select[@id='myselect']/option")
for (var i = 0; i < options.Count; i++) {
var val = options[i].InnerHtml;
}
ノードを反復処理して foreach を実行しようとしたところ、null 値が返されました。これは私にとってはうまくいきます。
于 2015-04-23T01:51:16.917 に答える