2009-09-29 74 views
1

我有3組表格數據,我想用ASP.NET MVC中的JavaScript框架來顯示。我知道我可以在選項卡中嵌入單獨的網格,但這似乎效率低下,尤其是在涉及大型數據集時,因爲我想象會創建3個單獨的網格。我還沒有找到一個JavaScript數據網格,它模擬了電子表格用多個選項卡所做的工作。從YUI這個例子可能接近,但:什麼是帶有選項卡的優秀JavaScript網格?

http://developer.yahoo.com/yui/examples/datatable/dt_dynamicfilter_source.html

我有點熟悉的jQuery,但願意切換到任意的框架,使這個容易。我並不需要編輯數據。有什麼建議麼?

編輯:我不是故意這是關於jQuery的。正如其中一條評論所暗示的,也許關於我的場景的一些細節會有所幫助。我想從包含數千條記錄的訂購系統中顯示錶格數據。我想要3個標籤:

  1. 所有在系統中輸入的尚未支付的訂單。
  2. 來自特定供應商的所有訂單。
  3. 已支付的所有訂單。

由於每個類別都有數千行,我只想在用戶開始分頁時加載數據。

我認爲有3個選項卡與3個單獨的網格(每個選項卡內的一個)不會高性能。儘管我還沒有嘗試過,所以我可能會過早地進行優化。我正在尋找一個內置標籤支持的網格。我不認爲jQuery有一個。也許ExtJS?

+0

也http://stackoverflow.com/questions/159025/jquery-grid-recommendations – 2009-09-29 22:53:26

+0

@Robert見。謝謝。是的,我看到了。雖然沒有任何帶有內置標籤的jQuery網格。 – royco 2009-09-30 00:39:18

回答

1

既然你用Ext JS標記了這個,我會提到使用Ext JS將網格渲染成標籤非常簡單。它還支持延遲加載/渲染,因此只有第一個選項卡/網格會首先加載,然後其他加載將在第一次訪問時加載。不知道你的具體要求,很難進一步評論。

編輯(基於編輯的問題):Ext網格不直接支持Tab鍵,但它們可以像我之前提到的那樣嵌入到TabPanel中,以獲得相同的效果。不過,根據你的描述,這聽起來更像是一個過濾場景給我。當只有一個網格可見時,我沒有看到有多個網格開銷的問題,並且每個網格的目的都是顯示相同數據的特定視圖(即過濾器)。我只需要一個帶有工具欄的網格或其他一些方法來提供您在過濾器之間的切換,並使用Ext的內置存儲過濾/查詢來按需創建視圖。 Ext網格支持開箱即用(客戶端或服務器,在您的情況下它將成千上萬的記錄服務器)。還有一個名爲LiveGrid的非常受歡迎的插件,它提供了大型數據集的虛擬滾動分頁功能。

我並不主張內線比任何其他框架 - 我只是碰巧是最熟悉它,我認爲這可能很好地解決您的問題。我會建議你自己嘗試一下。

+0

如果您使用ExtJS網格,希望您沒有人使用屏幕閱讀器閱讀您的網頁。 EXTJS Grid的外觀很漂亮,功能很強大,但引擎蓋下的HTML很可怕。 – epascarello 2009-09-30 04:48:42

+0

@bmoeskau:我在原始文章中添加了有關我的要求的詳細信息。 – royco 2009-09-30 06:38:30

+0

是的,Ext是使用複雜html呈現小部件的唯一RIA框架。真棒點。 – 2009-09-30 20:30:04

1

jQuery網格是有點什麼人用很多。我使用它,它非常好。

jqGrid Link

我不會畫格有三個選項卡。我會使用一個帶有tab控件的單個網格,然後根據需要通過jQuery加載數據。

或者可能有三個部分視圖,您可以在您點擊選項卡時動態加載。

+0

然後,您將失去標籤丟失的一大好處,當您切換它們時不需要重新加載數據。 – royco 2009-09-30 00:40:02

+0

這是真的,但您可以在切換到選項卡時下載數據,並在下次切換時直接顯示數據。這樣你只能加載用戶請求的數據。我實際上每次切換標籤時都會執行jQuery回發,檢查更改並只加載更改(如果有更改)。我仍然使用局部視圖方法,因爲它允許您對一小部分代碼進行更改,而不是在一個網格中執行所有選項卡時可能是一大塊代碼。 – griegs 2009-09-30 01:16:17

相關問題