2013-03-27 92 views
1

列表,所以我仍然在ASP.net MVC設計相當新。我面臨的一個小問題,這可能已經回答了,但似乎還沒有找到答案,將適合我的目的。這是發生了什麼:動態加載從模型MVC 4

說我有2個鏈接的模型:類別&項目,這是一個1對多的關係。我想要做的就是生成包含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. 在頁面上,默認選定的類別將成爲列表中的第一個。如果列表爲空,則顯示一個簡單的「無類別」。編輯:如果類別爲空,它將顯示類別中沒有項目。
  2. 在單擊該類別的項目,它會顯示在pl_values該類別的項目。

我試圖讓這個儘可能小,但還有很多因素需要考慮。但是,如果我能解決這個問題,我一定會弄清楚其餘的。如果事情不過是不明確的,請讓我知道,我可以嘗試和澄清。任何幫助將不勝感激。謝謝。

回答

0

爲了您的第1項,你可以嘗試這樣的事情(假設使用jQuery你OK):

$(document).ready(function() { 

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

    if(count <= 0) { 
     $("#pl_categories").html("<p>No Categories</p>"); 
    } 
}); 
+0

我下來:)對不起,我mean't的名單,而非類別。因此,如果默認列表沒有任何內容,則會顯示一條消息。不正確的。 – Div 2013-03-27 16:49:59