如何在 ASP.NET 中动态生成列表项到无序列表?
Posted
技术标签:
【中文标题】如何在 ASP.NET 中动态生成列表项到无序列表?【英文标题】:How can you dynamically generate list items to an unordered list in ASP.NET? 【发布时间】:2010-12-21 00:22:25 【问题描述】:如果出现错误,我有一个错误面板,它会被插入到页面中,以优雅地处理和显示错误。目前,我只是将错误消息附加到字符串并将其推送到标签。如果您有多个错误,这会变得混乱。因此,我想将每个错误推送到项目符号无序列表中的列表项。
如何从 vb 代码隐藏文件动态生成无序列表元素内的新列表项?
【问题讨论】:
【参考方案1】:为什么不使用BulletedList
控件?该控件将向客户端呈现一个无序列表。
<asp:BulletedList ID="BulletedList" runat="Server" BulletStyle="NotSet">
</asp:BulletedList>
然后您可以像这样以编程方式从后面的代码中添加列表项。
BulletedList.Items.Add("Item1");
您也可以通过添加runat='server'
来引用UL
标记服务器端来完成此操作。
<ul id="uList" runat="server">
</ul>
然后在后面的代码中使用Innerhtml
属性以编程方式将LI
标记添加到开始和结束UL
标记内的内容中。
uList.InnerHtml += "<li>Item1</li>";
【讨论】:
【参考方案2】:您可以使用页面级变量来保存错误,例如列表或数组。然后只需编写一个执行以下操作的方法:
Private Sub WriteErrors()
lblErrors.txt = "<ul>"
For Each s as String in _myErrors
me.lblErrors.Text &= "<li>" & s & "</li>"
End For
lblErrors.Text &= "</ul>"
End Sub
【讨论】:
以上是关于如何在 ASP.NET 中动态生成列表项到无序列表?的主要内容,如果未能解决你的问题,请参考以下文章
如何从剃刀视图提交具有动态列表的模型中的列表? ASP.NET 核心 3.1
如何在 ASP .NET MVC 5 中使用 select2 将新值动态添加到列表框并将其传递给控制器?