从后面的代码动态添加html列表项
本文关键字:添加 html 列表 动态 代码 | 更新日期: 2023-09-27 18:09:11
以上是我的.aspx页面中的代码。如何动态地从代码中添加这些?
<ul runat="server" id="1">
<li><a href="page.html">abc</a>
<ul runat="server" id="2">
<li><a href="pag2.htm">3</a></li>
<li><a href="page3.htm">2</a></li>
</ul>
</li>
</ul>
你可以拿这个链接中给出的教程做类比:http://neimke.blogspot.com/2011/01/create-delicious-user-interface-for.html它为我工作-它使用jquery使用下面的给定代码动态添加列表项。检查一下……
<li id="tagInputListItem"><input class="tagInput" id="tagInput" /></li>
您可以在.aspx中放置占位符并给它一个id,然后在页面后面的代码中使用该id并为该占位符添加控件。更多信息请看这里。
如果你对"runat=server"属性很确定也许我的这篇文章很有用(这里)
如果你需要澄清,给我一个反馈。
必须使用"sidebarmenu1"控件的"InnerHtml"属性。
protected void Page_Load(object sender, EventArgs e)
{
this.loadHtml();
}
所以你可以生成每个列表项代码并将其添加到InnerHtml:
private loadHtml()
{
this.sidebarmenu1.InnerHtml = GetListHtml().ToHtmlString();
}
还有一个GetListHtml:
的小例子public string GetListHtml()
{
StringBuilder htmlBuilder = new StringBuilder();
htmlBuilder.AppendLine("<li><a href="#">Flat</a>");
htmlBuilder.Append("<ul runat="server" id="sidebarmenu2">");
htmlBuilder.AppendLine("<li><a href="#">Flat 1`enter code here`</a></li>");
htmlBuilder.Append("<li><a href="#">Flat 2</a></li></ul>");
return htmlBuilder.ToString();
}
这个GetListHtml方法可以调用一个DAL或从任何其他地方加载数据…
您可以使用ASP Literal从后端代码填充数据如。如果你有一个带有id的文字
protected void Page_Load(object sender, EventArgs e)
{
ltrNavigation.text = "";
if (!IsPostBack)
{
ltrNavigation.text += "<ul id='sidebarmenu1'>";
ltrNavigation.text += "<li><a href='#'>Flat</a></li>";
ltrNavigation.text += "</ul>";
}
}