如何从Code Behind生成HtmlGenericControl时删除span

时间:2014-01-24 06:29:45

标签: c# html asp.net .net

我有这样的代码安静,它会生成一个下拉菜单,不幸的是我遇到了问题,因为在创建每个HtmlGenericControl时会生成span标记。

这是我生成HtmlGenericControls的代码:

    string _touid = Request.QueryString["touid"];
    string _group_array = Connections.isp_GET_VALUE("TRSTR", "", "", "");
    string _tour_array = _group_array.Replace(" ", "");

    HtmlGenericControl _ul = new HtmlGenericControl();
    _ul.InnerHtml = "<ul class=\"dropdown-menu\">";

    tour_holder.Controls.Add(_ul);

    string[] groups = _tour_array.Split(',');
    foreach (string group in groups)
    {
        string _tournoment_string = Connections.isp_GET_VALUE("TRNAM", group, "", "");

        HtmlGenericControl _li = new HtmlGenericControl();
        _li.InnerHtml = "<li><a href=\"Management.aspx?cid=" + _cid + "&touid=" + group + "\">" + _tournoment_string + "</a></li>";

        tour_holder.Controls.Add(_li);
    }
    HtmlGenericControl _ul_ = new HtmlGenericControl();
    _ul_.InnerHtml = "</ul>";
    tour_holder.Controls.Add(_ul_);      

以下是HTML输出:

<span><ul class="dropdown-menu"></span>
   <span><li><a href="Management.aspx?cid=&touid=1">FIFA World Cup Brasil 2014                      </a></li>
</span>
   <span><li><a href="Management.aspx?cid=&touid=2">FIFA U-20 World Cup New Zealand 2015              </a></li></span>
   <span><li><a href="Management.aspx?cid=&touid=3">FIFA Woman's World Cup Canada 2015                </a></li></span> 
<span></ul></span>
</div>

如何删除span代码?

1 个答案:

答案 0 :(得分:1)

有人提出了类似的问题here

尝试将HTML标记传递给构造函数,而不是像下面那样使用InnerHtml属性:

HtmlGenericControl _ul = new HtmlGenericControl("ul");