从代码后面的Div html不显示c#

本文关键字:html 显示 Div 代码 | 更新日期: 2023-09-27 18:09:15

我试图从代码后面生成手风琴窗格。不知怎么的,手风琴没有显示出来。我有菜单。在我的代码后面,我尝试用div创建手风琴窗格。下面是我的代码。

Menu.aspx

 <asp:Content ID="Content1" ContentPlaceHolderID="AccordionMenu" runat="Server">
<div id="divMenu" style="width: 241px" runat="server"></div>

代码后面

protected void Page_Load(object sender, EventArgs e)
{
    // Create Accordion Pane Header Content
    divMenu.InnerHtml = "<div class='tab_container' id='tab_container'>";
    foreach (SiteMapNode node in SiteMap.RootNode.ChildNodes)
    {
        // Header
        //Check whether is first node
        if (SiteMap.RootNode.ChildNodes.Count == 0)
        {
            // Create header html
            divMenu.InnerHtml += "<h3 class='d_active tab_drawer_heading' rel='" + node.Title + "'>" + node.Title + "</h3>";          
        }
        else
        {
            divMenu.InnerHtml += "<h3 class='tab_drawer_heading' rel='" + node.Title + "'>" + node.Title + "</h3>";
        }
        // Create header html
        divMenu.InnerHtml += "div id='" + node.Title + "' class='tab_content' style='display: block;'>";
        // Content
        foreach (SiteMapNode child in node.ChildNodes)
        {
            // Check Role Access Right
            if (CheckRolePermission(ConstantValues.MAINTENANCEMODE_VIEW, GetFunctionNameByTitle(child.Title)))
            {
                // Create content html
                divMenu.InnerHtml += "<p>" + child.Title + "</p>";
                divMenu.InnerHtml += "</div>";
            }
        }
    }
    divMenu.InnerHtml += "</div>";
}

HTML ONLY - Working

<table border="0" cellspacing="0" cellpadding="0" id="content-container">
    <tr>
        <td>
            <div class="tab_container" id="tab_container">
              <h3 class="d_active tab_drawer_heading" rel="tab1">Tab 1</h3>
              <div id="tab1" class="tab_content" style="display: block;">
                <p>Content 1</p>
              </div>
              <h3 class="tab_drawer_heading" rel="tab2">Tab 2</h3>
              <div id="tab2" class="tab_content" style="display: none;">
                <p>Content 2</p>
              </div>
              <h3 class="tab_drawer_heading" rel="tab3">Tab 3</h3>
              <div id="tab3" class="tab_content" style="display: none;">
                <p>Content 3</p>
              </div>
            </div>
            <script src="Menu/Js/menu.js" type="text/javascript"></script>
        </td>
        <td/>
    </tr>
</table>

从代码后面的Div html不显示c#

您错过了div的起始标签,试试这个。

protected void Page_Load(object sender, EventArgs e)
{
    // Create Accordion Pane Header Content
    divMenu.InnerHtml = "<div class='tab_container' id='tab_container'>";
    foreach (SiteMapNode node in SiteMap.RootNode.ChildNodes)
    {
        // Header
        //Check whether is first node
        if (SiteMap.RootNode.ChildNodes.Count == 0)
        {
            // Create header html
            divMenu.InnerHtml += "<h3 class='d_active tab_drawer_heading' rel='" + node.Title + "'>" + node.Title + "</h3>";          
        }
        else
        {
            divMenu.InnerHtml += "<h3 class='tab_drawer_heading' rel='" + node.Title + "'>" + node.Title + "</h3>";
        }
        // Create header html
        divMenu.InnerHtml += "<div id='" + node.Title + "' class='tab_content' style='display: block;'>";
        // Content
        foreach (SiteMapNode child in node.ChildNodes)
        {
            // Check Role Access Right
            if (CheckRolePermission(ConstantValues.MAINTENANCEMODE_VIEW, GetFunctionNameByTitle(child.Title)))
            {
                // Create content html
                divMenu.InnerHtml += "<p>" + child.Title + "</p>";
            }
        }
        divMenu.InnerHtml += "</div>";
    }
    divMenu.InnerHtml += "</div>";
}