从模型MVC 4中动态加载列表

本文关键字:动态 加载 列表 模型 MVC | 更新日期: 2023-09-27 18:06:03

所以我在ASP.net MVC设计方面还是很新的。我正面临一个小问题,它可能已经得到了答案,但似乎没有找到一个答案,将符合我的目的。下面是发生的事情:

假设我有一个有两个链接的模型:项,这是一个1对多的关系。我要做的是生成一个包含Category的列表。Title(我已经使用下面的代码完成了)并单击每个列表项将生成所有item的列表。该类别的标题值。html的基本思想是:

<div id="cat"><!--float = left-->
    <ul>
        <li>List<li>
    </ul>
</div>
<div id="item"> <!--float = right -->
    <ul>
        <li>List<li>
    </ul>
</div>

到目前为止,所有内容都是这样链接的:

public ActionResult Equipment()
{
    ViewBag.Cat= getCat(1); // Will return a list of categories of ID 1
    return View();
}

关于视图:

@{ List<X.Models.Category> catX = ViewBag.Cat; }
BODY:
<div id="pl_categories">
    <ul id="pl_ec_ul">
        @foreach (X.Models.Category item in catX)
        {
            <li id="pl_ec_li">
                <div id="pl_ec_liItem">
                    @item.catTitle
                </div>
            </li>
        }
    </ul>
</div>
<div id="pl_values">
    <ul id="pl_ev_ul">
        <li id="pl_ev_li">
            <div id="pl_ev_liItem">
                ???
            </div>
        </li>
    </ul>

我见过很多例子,但它们都涉及下拉菜单之类的。以下是我想要完成的工作清单:

  1. 页面加载时,默认选择的类别将是列表中的第一个。如果list为空,则显示一个简单的"No Categories"。编辑:如果类别为空,则显示"类别中无项目"。
  2. 点击类别中的项目,它将在pl_values下显示该类别的项目。

我试图使这个尽可能小,但有很多因素我需要考虑。然而,如果我能解决这个问题,我肯定能解决剩下的问题。如果有什么不清楚,请让我知道,我可以试着澄清它。任何帮助都将不胜感激。谢谢你。

从模型MVC 4中动态加载列表

对于您的项目1,您可以尝试这样做(假设您使用jQuery OK):

$(document).ready(function() {
    var count = $("#pl_ec_ul li").length;
    if(count <= 0) {
        $("#pl_categories").html("<p>No Categories</p>");
    }
});