动态添加Html代码到div

时间:2015-06-26 06:17:13

标签: asp.net

private void GetGroupListHtml()
{                
                //...Code omitted
                String htmlCode = String.Empty;

                foreach (DataRow _DataRow in _DataTable.Rows)
                {
                    htmlCode += @"<div class=""box collapsed-box"">
                         <div class=""box-header with-border"">
                             <h3 class=""box-title"">
                                  <asp:Label ID=""groupTitleLabel"" runat=""server"" Text=" +_DataRow["groupName"] +  @"""></asp:Label>
                             </h3>
                             <div class=""box-tools pull-right"">
                                 <button class=""btn btn-box-tool"" data-widget=""collapse"" data-toggle=""tooltip"" title=""Expand""><i class=""fa fa-plus""></i></button>
                             </div>
                         </div>
                       </div>";
                }
}

我想将htmlCodes添加到div中。有可能这样做吗?基本上我有一个字符串变量附加html代码。我想将此代码转储到div标签之间,并将新网页返回给用户。

<div id="groupListDiv" runat="server"></div>

1 个答案:

答案 0 :(得分:1)

首先使用StringBuilder来连接字符串,而不是使用+=符号。

StringBuilder sb = new StringBuilder();
sb.Append("<...>"); // Your html code

之后,如果您要将此生成的html附加到您的网页,请使用位于您要添加html代码的网页上的<asp:Panel runat="server" id="pnlCode"></asp:Panel>标记。

然后在您的代码中,只需执行:

this.pnlCode.Controls.add(new LiteralControl() { Text = sb.ToString() });

这会将您的html作为字符串,将其放入控件中,然后将其附加到您的面板上。