Dropdown.js
前言
在SPA(Single Page Application)盛行的時代,jQuery插件的輪子正在減少,由於我廠有需求而開發了這個插件。
如果覺得本文對您有幫助,請給個贊,以表對我的鼓勵和支持。(๑•ᴗ•๑)
如果覺得有什么問題,可以到 Github 提Issue,歡迎大家提意見~
介紹
Dropdown是面向PC端的基於jQuery開發的輕量級下拉框插件,支持key/value搜索,有token和select兩種模式。
版本
- 1.0.0
支持
- Internet Explorer 8+
- Chrome for PC
- Safari for PC
- Firefox for PC
依賴於
- jQuery 1.4+
特性
- 支持
select
和token
兩種模式 - 支持
optgroup
分組 - 保留原生
select
的鍵盤操作 - 數據源可以直接通過接口
data
注入,也可以直接渲染select > option
,由插件自動轉換。 - 插件同步
select
和ul>li
標簽,便於表單字段提交及前端校驗,
原理
程序設計原理如下圖所示:

Options
名稱 | 描述 | 類型 | 默認 |
---|---|---|---|
readOnly | 是否只讀 | Boolean | false |
limitCount | 選擇上限 | Number | Infinity |
input | 搜索框模板 | HTML | <input type="text" maxLength="20" placeholder="搜索關鍵詞或ID"> |
data | 數據源 | Array | [] |
searchable | 是否可開啟搜索 | Boolean | true |
searchNoData | 無數據模板 | HTML | <li style="color:#ddd">查無數據,換個詞兒試試 /(ㄒoㄒ)/~~</li> |
choice | 選擇后回調函數 | Function | function(){} |
Usage
引入
<script src="http://cdn.bootcss.com/jquery/1.8.1/jquery.js"></script> <link rel="stylesheet" type="text/css" href="./jquery.dropdown.css"> <script src="./jquery.dropdown.js"></script>
HTML 部分
<div class="dropdown-mul-1"> <!-- PS: select標簽需手動設置隱藏 --> <select style="display:none" name="" id="" multiple placeholder="請選擇"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> </select> </div>
JavaScript 部分
$('.dropdown-mul-1').dropdown({ limitCount: 40, multipleMode: 'label', choice: function () { console.log(arguments,this); } });