使用C#

时间:2016-05-17 08:52:08

标签: c# html-agility-pack

我想从选择列表中提取选项值以及选项标签之间的文本。

body>
<select name="country" id="id_country">
    <option value="">Select a country...</option>
    <option value="AF">Afghanistan</option>
    <option value="AX">Åland Islands</option>
    <option value="AL">Albania</option>
    <option value="DZ">Algeria</option>
    <option value="AS">American Samoa</option>
    <option value="AD">Andorra</option>
    <option value="AO">Angola</option>

我尝试了以下对我有意义的事情。

 HtmlDocument doc = new HtmlDocument();
            doc.LoadHtml(sb.ToString());

            var values = doc.DocumentNode.Descendants("option").Select(n => new
             {
                 Value = n.Attributes["value"].Value,
                 Text = n.InnerHtml,
             }).ToList();

并设法获取选项值,但不是标记之间的国家/地区名称。

返回此信息。

 Value="AF", Text="",
Value="AX", Text="",

等。 我怎样才能返回值?

1 个答案:

答案 0 :(得分:-1)

应该使用n.InnerText而不是InnerHtml。