2009-06-24 48 views
0

我目前有一個分頁報表,一次顯示20條記錄。總共有600條記錄。檢查全部分頁複選框

在這個報告中,我也有每個記錄的複選框列。在此基礎上,我的查詢如下:

1)我想加入一個「全部檢查」功能,所以根據我的場景顯示20條記錄(總共600條記錄),當我按「檢查所有「複選框,我實際上想要檢查所有600個記錄,而不是每個分頁20個。

這是可能的JavaScript作爲記錄總數會有所不同?如果是這樣,任何幫助將不勝感激?

2)相同的概念點(1),如果我有一個「提交」按鈕,其實我是想驗證所有600個記錄已被遏制,儘管我只在看20條記錄在一個時間

這可能嗎?如果是這樣,任何幫助將不勝感激?

謝謝。 Tony。

+0

在此檢查完成後,您執行的所有操作是什麼? – rahul 2009-06-24 06:50:45

回答

2

如果你想要javascript來做這種功能,那麼你所有的複選框都必須渲染到屏幕上。

1

如果您確實希望您的「全部檢查」框指的是檢查所有頁面,那麼'建議檢查服務器端的檢查。

例如

<ul> 
    <li><input type='checkbox' name='item_ids[]' value='1'/>Item 1</li> 
    <li><input type='checkbox' name='item_ids[]' value='2'/>Item 2</li> 
    <li><input type='checkbox' name='item_ids[]' value='3'/>Item 3</li> 

    <li><input type='checkbox' name='check_all' value='check_all'/></li> 

</ul> 

注意當然,「檢查」複選框,用戶無法看到意味着他們不能全選,然後取消選擇個別。檢查所有頁面也有點違反直覺。這類事情的大多數實現只會影響您當前正在查看的頁面。我可能會使用不同的控件(一個單獨的按鈕)來實現這種功能。

1

這可能不是用戶所期望的,因爲我們都知道可用性的黃金法則是不會讓用戶感到驚訝。我會建議一個按鈕或一個鏈接,非常清楚地表明,這一行動將「選擇所有,所有,我的意思是所有頁面上的所有記錄」。

另一個可能的解決方案,我看到很多是「顯示所有在一個頁面上」的鏈接。在用戶點擊並且頁面重新載入所有記錄並且沒有分頁之後,他們可以選擇全部。

但實際上回答你的問題,我需要更多的信息。分頁serverside?或者服務器實際上服務於600條記錄,但是它們在客戶端被切分成20/20塊?