前言

在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+

特性

  1. 支持 select 和 token 兩種模式
  2. 支持 optgroup 分組
  3. 保留原生 select 的鍵盤操作
  4. 數據源可以直接通過接口 data 注入,也可以直接渲染 select > option ,由插件自動轉換。
  5. 插件同步 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); } });

Example

https://janking.github.io/dropdown/