jQuery使用Selectator插件實現(xiàn)多選下拉列表過濾框(附源碼下載)
Selectator是一款實現(xiàn)多選和搜索過濾功能的jQuery下拉列表框插件。它支持搜索,并且能直接影響原始的選擇框,而原始的選擇框是用作數(shù)據(jù)容器。通過該下拉列表框插件可以多選項進行分組,設(shè)置選項的圖標(biāo),對選項進行搜索過濾,以及進行多選選擇。
使用方法
使用該下拉類別框插件需要在頁面中引入fm.selectator.jquery.css、jQuery和fm.selectator.jquery.js文件。
<link rel="stylesheet" href="fm.selectator.jquery.css"/> <script src="jquery-1.11.0.min.js"></script> <script src="fm.selectator.jquery.js"></script>
HTML結(jié)構(gòu)
一個選項帶圖標(biāo)級帶分組選項的下拉列表的HTML結(jié)構(gòu)如下:
<label for="select"> Multi select with custom content: </label> <select id="select" name="select" multiple> <optgroup label="Group one" class="group_one"> <option value="1" class="option_one" data-subtitle="Et" data-left="<img src='images/ingi.png'>" data-right="1">One</option> <option value="2" class="option_two" data-subtitle="To" data-left="<img src='images/runa.png'>" data-right="2">Two</option> </optgroup> <optgroup label="Group two" class="group_two"> <option value="3" class="option_three" data-subtitle="Tre" data-left="<img src='images/jogvan.png'>" data-right="3">Three</option> <option value="4" class="option_four" selected data-left="<img src='images/noimage.png'>" data-right="4">Four</option> <option value="5" class="option_five" selected data-left="<img src='images/noimage.png'>" data-right="5">Five</option> <option value="6" class="option_six">Six</option> </optgroup> <optgroup label="Group three" class="group_three"> <option value="7" class="option_seven">Seven</option> </optgroup> <option value="8" class="option_eight" data-subtitle="Otte">Eight</option> <option value="9" class="option_nine">Nine</option> <option value="10" class="option_ten" selected>Ten</option> <option value="11" class="option_eleven" selected>Eleven</option> <option value="12" class="option_twelve">Twelve</option> <option value="13" class="option_thirteen">Thirteen</option> <option value="14" class="option_fourteen">Fourteen</option> </select> <input value="activate selectator" id="activate_selectator4" type="button">
初始化插件
在頁面DOM元素加載完畢之后,可以通過selectator()方法來初始化該下拉列表插件。
$('#selectBox').selectator();
你也可以直接使用標(biāo)簽來初始化它:
<select multiple class="selectator" data-selectator-keep-open="true">
配置參數(shù)
$('#selectBox').selectator({ prefix: 'selectator_', // CSS class prefix height: 'auto', // auto or element useDimmer: false, // dims the screen when option list is visible u**arch: true, // if false, the search boxes are removed and // `showAllOptionsOnFocus` is forced to true keepOpen: false, // if true, then the dropdown will not close when // selecting options, but stay open until losing focus showAllOptionsOnFocus: false, // shows all options if input box is empty selectFirstOptionOnSearch: true, // selects the topmost option on every search searchCallback: function(value){}, // Callback function when enter is pressed and // no option is active in multi select box labels: { search: 'Search...' // Placeholder text in search box in single select box } });
其它可用的屬性標(biāo)簽
通過使用data-left、data-right和data-subtitle標(biāo)簽?zāi)憧梢詳U展下拉列表的顯示信息。它們可以通過CSS來設(shè)置樣式,CSS的前綴為:prefix_title、prefix_left、prefix_right和prefix_subtitle。這些數(shù)據(jù)都是純HTML代碼,所以你也可以使用圖片代碼。
<select id="selectBox"> <!-- Normal option tag --> <option value="1">This is the title</option> <!-- Extended option tag --> <option value="2" data-left="This is the left section" data-right="This is the right section" data-subtitle="This is the section under the title">This is the title</option> </select>
上的代碼會顯示為類似下面的結(jié)構(gòu):
CSS類
class | 描述 |
prefix_element | 這是一個新的下拉列表框。它帶有相同的額外class類:single 和 multiple ,它們用于設(shè)置是單選還是多選。另外 options-visible 和 options-hidden 用于設(shè)置選項是否可見 |
prefix_chosen_items | 被選擇的選項的容器 |
prefix_chosen_item | 當(dāng)前被選擇的選項的容器 |
prefix_chosen_item_title | 當(dāng)前被選擇的選項的標(biāo)題 |
prefix_chosen_item_left | 當(dāng)前被選擇的選項的左側(cè)的內(nèi)容 |
prefix_chosen_item_right | 當(dāng)前被選擇的選項的右側(cè)的內(nèi)容 |
prefix_chosen_item_subtitle | 當(dāng)前被選擇的選項的子標(biāo)題 |
prefix_chosen_item_remove | 當(dāng)前被選擇的選項的移除按鈕 |
prefix_input | This is the input box for the selectator. This is used together with options-visible or options-hidden to show and style it differently if it is a multiple selection box or a single selection box. |
prefix_textlength | 用于計算多項選擇框中input的尺寸 |
prefix_options | 選項列表容器 |
prefix_group_header | 分組標(biāo)題 |
prefix_group | 分組容器 |
prefix_option | 結(jié)果選項。它使用class active 來表明當(dāng)前激活的選項 |
prefix_option_title | 結(jié)果選項的標(biāo)題 |
prefix_option_left | 結(jié)果選項左側(cè)的內(nèi)容 |
prefix_option_right | 結(jié)果選項右側(cè)的內(nèi)容 |
prefix_option_subtitle | 結(jié)果選項右側(cè)的子標(biāo)題 |
prefix_dimmer | dimmer |
方法
方法 | 描述 |
refresh | 該方法用于刷新插件 |
destroy | 該方法用于銷毀插件 |
jquery.selectator-custom下拉列表插件的github地址為:
相關(guān)文章
JQuery slideshow的一個小問題(如何發(fā)現(xiàn)及解決過程)
在做一個網(wǎng)頁homepage的時候,想用slideshow[1]做圖片切換效果,在打開頁面所以的正常測試都沒問題:當(dāng)瀏覽器同時打開多個tab,停留他tab中的頁面一段時間后,會出現(xiàn)圖片是最后一張圖片,針對這個問題,本文給予了詳細的解決方法,感興趣的朋友可以了解下2013-02-02Jquery鼠標(biāo)放上去顯示全名的實現(xiàn)方法
下面小編就為大家?guī)硪黄狫query鼠標(biāo)放上去顯示全名的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02html、css和jquery相結(jié)合實現(xiàn)簡單的進度條效果實例代碼
這篇文章主要介紹了html、css和jquery相結(jié)合實現(xiàn)簡單的進度條效果的實例代碼,這個進度條特別簡單,首先html里面的話就是一個div里面嵌套一個div,然后寫好想要的樣式就行了,具有一定的參考借鑒價值,感興趣的朋友一起看看吧2016-10-10淺談jQuery綁定事件會疊加的解決方法和心得總結(jié)
下面小編就為大家?guī)硪黄獪\談jQuery綁定事件會疊加的解決方法和心得總結(jié)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-10-10使用jQuery實現(xiàn)WordPress中的Ctrl+Enter和@評論回復(fù)
相信大家對QQ中的Ctrl+Enter快捷回復(fù)和微博上的@指名回復(fù)功能都不陌生,在WordPress的評論欄方面我們同樣可以添加這樣的功能,一起來看使用jQuery實現(xiàn)WordPress中的Ctrl+Enter和@評論回復(fù)的方法:2016-05-05