gpt4 book ai didi

c# - 我如何从平面列表构建嵌套的 HTML 列表

转载 作者:行者123 更新时间:2023-11-27 22:53:21 27 4
gpt4 key购买 nike

我有一个从我的模型传递到我的 View 的元组列表。我正在尝试使用从模型中获得的元组列表创建一个嵌套的 HTML 列表。我的列表以正确的顺序返回。如果嵌套列表项,它可以是无限多个。

我尝试使用 foreach 循环遍历元组列表,但是标记只显示 <UL>紧挨着彼此,不嵌套。

我的 foreach 循环看起来像这样

        @foreach (var item in Model)
{
<ul class="nav-breadcrumbs">
<li>
<a href="@item.Item2">@item.Item1</a>
</li>
</ul>
}

我希望每个项目都是前一个项目的子项。如果需要,我可以更改我的模型。或者可能将数据传递给 javascript 变量并使用 jquery 构建嵌套列表。我希望我的标记最终看起来像这样。让它继续嵌套

<ul>
<li>
<a>link</a>
<ul>
<li>
<a>link</a>
</li>
</ul>
</li>
</ul>

最佳答案

另一种(相对简单的)解决方案是在解析之前在 View 上创建 Html 字符串,如下所示:

Html 解析器不允许您先打开所有 ul、li 标签,然后在最后关闭所有标签,因此您必须这样做:

@{
string html = "";

foreach (var item in Model)
{
html += "<ul class='nav-breadcrumbs'><li><a href=" + item.Item2 + ">" + item.Item1 + "</a>";
}

foreach (var item in Model)
{
html += "</li></ul>";
}
}

@Html.Raw(html)

关于c# - 我如何从平面列表构建嵌套的 HTML 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57794689/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com