2012-11-13 71 views
13

背景

我要尋找一個jQuery-或基於JavaScript的組合框控件穿梭允許用戶過濾源列表。源列表是一個組合框(在左邊),目的地列表是第二個組合框(在右邊)。可篩選多選組合框班車/傳送部件

樣機

小部件應類似於:

mockup

現有的jQuery widget

Bootstrap Transfer

用法

用戶可以:

  1. 類型一個正則表達式來篩選源列表(例如,Toy.*)。
    • 窗口小部件隱藏所有與過濾器表達式不匹配的項目。
  2. 從源列表中選擇一個或多個項目(使用單擊,控制點擊和按住Shift鍵單擊選擇)。
  3. 單擊>>將項目從源列表轉移到目標列表。
  4. 清除篩選器以顯示完整的源列表。

技術

理想情況下,組合框會使用多選的HTML組合框和標記將是微不足道的:

<select name="sourceList" id="sourceList" size="20" multiple="multiple"> 
    <option value="1">Toyota</option> 
    <option value="2">Mitsubishi</option> 
    <option value="3">Nintendo</option> 
    <option value="4">Samsung</option> 
    <option value="5">Bank of Kyoto</option> 
</select> 

<select name="destinationList" id="destinationList" size="20" multiple="multiple"> 
    <option value="6">Mazda</option> 
    <option value="7">Fuji</option> 
    <option value="8">Honda</option> 
</select> 

<script> 
    $('#sourceList').shuttle(); 
</script> 

發現

這些都是接近:

這些近乎完美:

我期待批了類別3000的分配 - 5000項,並認爲這將是完成這樣的一個快速的方法壯舉。 (這家日本公司名稱是純屬虛構。在現實中,名字通常有一個共同的詞或短語)

問題

什麼是自由和開源插件(jQuery的或純JavaScript),以滿足這些要求?

相關

相關鏈接:

+1

您的列表中不包括jQuery的multiselect2side HTTP://www.senamion。 com/blog/2010/02/20/jquery-select-multiple-double-side/ –

回答

6

實現所期望的功能:

  • 正則表達式搜索
  • 支持國際比較
  • 用途的jQuery
  • 允許多個選擇
  • 用單一的<select>元件
  • 極其簡單API
  • 自動調整插件寬度

源代碼和演示

http://jsfiddle.net/U8Xre/

已知問題

傳輸部件不更新搜索陣列,造成重複的項目。

5

一個漂亮的jQuery /引導插件(多選兩個窗格,過濾器正則表達式):

引導雙列表框:http://www.virtuosoft.eu/code/bootstrap-duallistbox/

+0

過濾器刷新8000個條目的面板有多快?它處理變音符號嗎? –

+0

表現問題:https://github.com/istvan-ujjmeszaros/bootstrap-duallistbox/issues/21 –