2010-02-19 530 views
0

是允許從代碼創建動態JavaScript菜單的任何庫?asp.net mvc動態javascript菜單

+0

這個問題比較模糊。你能舉出你想創建什麼類型的動態JavaScript的例子嗎? – 2010-02-19 02:43:58

+0

hmmm ....示例...可能是示例菜單UI?像這樣的東西 - 顯示父節點時,當鼠標移到父節點上,然後動態顯示子節點。清楚嗎?實際上說我需要菜單,只顯示父節點,但子節點只顯示鼠標超過父或父節點 – kusanagi 2010-02-19 02:49:54

回答

1

只需使用普通的jane UL/LI並使用javascript來做視覺效果。以這種方式運行的網上菜單很多。

例子:

<UL> 
<% foreach(var item in ViewData["MyMenu"]){%> 
<LI><%= item.Title %></LI> 
<%} %> 
</UL> 
+0

以及您如何顯示\隱藏子項目? – kusanagi 2010-02-20 14:36:54

+0

那麼你可以使用這樣的東西http://users.tpg.com.au/j_birch/plugins/superfish/#ab。但是如果你想自己做一個simle

  • <%= item.Title%>
  • 然後你會爲那個show menu命令編寫javascript。它應該看起來像這個函數ShowSubMenu(){$(「#MySubMenuID」)。show();}。如果你不知道我在說什麼,找到一個預先構建的基於jQuery的菜單系統並使用它,那麼互聯網上就有很多。也看到這個網站http://plugins.jquery.com/project/jQuery-Horizo​​ntal-Menu – 2010-02-22 02:31:55

    2

    如果您使用ASP控件如<ASP:MENU>,則下拉效果由服務器端的控件進行javascript編輯。你應該也可以在ASP.NET MVC中使用它。

    參見Leveraging Existing ASP.NET Features in ASP.NET MVC

    另一個好例子是web窗體驗證,所述client-side validation腳本都在服務器端動態地生成。

    UPDATE
    這可能是你在找什麼:
    ASP.NET and JQuery MVC MenuPart 2

    +0

    在asp.net mvc沒有控制像,沒有webforms我對不對?所以這是一個問題,我猜我需要編寫我自己的菜單 – kusanagi 2010-02-19 03:31:47

    +1

    這可能,只是不漂亮。請參閱我的文章中的鏈接。正如其他人已經回答的那樣,如果您可以像無序列表一樣在標記中生成菜單,那麼引入一些jQuery其他JS框架插件+ CSS就可以做到。大多數不需要服務器端的JavaScript代。我在我的更新答案中添加了一個鏈接,可能有所幫助。 – 2010-02-19 03:57:00

    +0

    我討厭成爲mvc納粹,但你應該完全消除使用mvc時大多數服務器控件的使用。它減損了框架的TDD功能,而且看起來很醜陋。 – 2010-02-22 02:34:10

    0

    我的理解是,MVC框架的主要好處是您可以完全控制表示層標記。因此,您可以定製它以匹配幾乎所有基於JavaScript的菜單系統。例如,您可以使用jQuery構建很多優秀的系統。

    +1

    但是如何? :)我知道,沒有「控制」,但我需要任何想法\示例 – kusanagi 2010-02-19 03:46:43

    +0

    如何?你不確定哪部分是/你需要哪個部分的例子?基本概念:通過ASP.net,您可以生成適當的HTML標記(通常是嵌套的無序列表)。通過javascript,您可以操縱該標記來創建您想要的菜單類型。通過CSS來設計它。 Suckerfish(以及所有變量)就是這樣的菜單的好例子。 – 2010-02-19 17:58:41

    0

    我在我的MVC應用程序使用Telerik Mvc Extensions。他們是免費的,很容易合作。加上皮膚功能http://www.telerik.com/products/aspnet-ajax/visual-style-builder.aspx可以使擴展感覺像任何網站設計的家。擴展名是用JQuery編寫的。

    +0

    你確定他們絕對免費嗎? – kusanagi 2010-02-20 14:37:44

    +0

    他們根據GPL v2.0許可,所以如果您不使用控件賺錢,那麼他們可以隨意使用。因此,如果您打算將控件打包到您打算銷售的產品中,那麼您需要獲得商業許可。 – dionysus55 2010-02-22 21:22:05