1

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

假设我有一个带有 2 个链接的模型:类别和项目,它是一对多的关系。我想要做的是生成一个包含 Category.Title 的列表(我已经完成,使用下面的代码)并单击每个列表项将生成该类别的所有 Item.Title 值的列表。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. 在页面 laod 上,默认选择的类别将是列表中的第一个。如果列表为空,则显示一个简单的“无类别”。编辑:如果类别为空,它将显示类别中没有项目。
  2. 单击类别中的项目时,它将在 pl_values 下显示该类别的项目。

我试图让它尽可能小,但我需要考虑更多的因素。但是,如果我能解决这个问题,我肯定会弄清楚其余的。但是,如果有不清楚的地方,请告诉我,我可以尝试澄清。任何帮助将不胜感激。谢谢你。

4

1 回答 1

0

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

$(document).ready(function() {

    var count = $("#pl_ec_ul li").length;

    if(count <= 0) {
        $("#pl_categories").html("<p>No Categories</p>");
    }
});
于 2013-03-27T16:42:08.703 回答