在ASP.NET中动态添加DIV标记

时间:2016-12-09 19:51:07

标签: c# html css asp.net

我试图通过ASP在页面上动态添加div,但似乎没有发生任何事情。

我创建的函数是addMainDivs()

- .aspx.cs代码隐藏

- 断点

  public partial class _Default : Page
        {
            protected void addmainDiv(int m)
            {
                System.Web.UI.HtmlControls.HtmlGenericControl newdivs = new System.Web.UI.HtmlControls.HtmlGenericControl("DIV");
                newdivs.Attributes.Add("class", "maindivs");

                for(int i = 0; i<= m; i++)
                {
                    maindivs.Controls.Add(newdivs);
                }

            }

- 断点在这里

  protected void Page_Load(object sender, EventArgs e)
    {
        addmainDiv(1);
    }
}

这是aspx代码:

<div id = "maindiv">
<asp:PlaceHolder ID ="maindivs" runat="server">
</asp:PlaceHolder>
 </div>

该功能不会在这些断点处受到影响,这是我的应用程序的默认开始页面。页眉和页脚是硬编码的,但上面的代码在父母潜水ID“maindiv”下进入正文

1 个答案:

答案 0 :(得分:2)

protected void addmainDiv(int m)
{             
    for(int i = 0; i< m; i++)
    {
      System.Web.UI.HtmlControls.HtmlGenericControl newdivs = new System.Web.UI.HtmlControls.HtmlGenericControl("DIV");
      newdivs.Attributes.Add("class", "maindivs");
      maindivs.Controls.Add(newdivs);
   }

}

在我的问题中,我在addMainDiv()函数的for循环之外有前两行,所以即使参数更高,它也只返回1 div。修正如上所述非常好。