jQuery选择插件增强本机选择框

  • 源码大小:12.57KB
  • 所需积分:1积分
  • 源码编号:19JP-3050
  • 浏览次数:1105次
  • 最后更新:2023年04月30日
  • 所属栏目:表单
本站默认解压密码:19jp.com 或 19jp_com

简介

vSelect是一个轻量级的自定义选择jQuery插件,它通过可定制、用户友好的下拉菜单重新设计了本地选择框,以获得更好的导航/浏览体验。

主要功能:

  • 多选选项的复选框。

  • 选中全部复选框,只需单击即可选择所有选项。

  • 可伸缩<选择组>选项组。

参见:

  • 替换Native Select Box的10个最佳下拉插件

如何使用它:

1.下载并导入vSelect插件的文件。

  1. // JavaScript
  2. import "pfkl-select/vselect/vselect.min.js";
  3.  
  4. // Stylesheet
  5. @import "~pfkl-vselect/vselect/vselect";
  1. <!-- OR -->
  2. <link rel="stylesheet" href="vselect/vselect.min.css" />
  3. <script src="/path/to/cdn/jquery.min.js"></script>
  4. <script src="vselect/vselect.js"></script>

2.只需调用函数v选择在您的选择元素,插件将完成其余工作。

  1. <select name="food" id="example" multiple>
  2.   <optgroup label="Fruits">
  3.     <option value="apple">Apple</option>
  4.     <option value="banana">Banana</option>
  5.     <option value="orange">Orange</option>
  6.   </optgroup>
  7.   <optgroup label="Vegetables">
  8.     <option value="carrot">Carrot</option>
  9.     <option value="celery">Celery</option>
  10.     <option value="cucumber">Cucumber</option>
  11.   </optgroup>
  12.   <optgroup label="Meat">
  13.     <option value="beef">Beef</option>
  14.     <option value="chicken">Chicken</option>
  15.     <option value="fish">Fish</option>
  16.   </optgroup>
  17. </select>
  1. $('#example').vSelect({
  2.   // options here
  3. });

3.用于自定义下拉选择的可用选项。

  1. $('#example').vSelect({
  2.  
  3.   // allows multiselect
  4.   multiSelect: true,
  5.  
  6.   // custom placeholder
  7.   placeholder: 'Please select',
  8.  
  9.   // enable Check All checkbox
  10.   checkAll: true,
  11.   checkAllLabel: 'All',
  12.  
  13.   // expand all option groups on load
  14.   expanded: true,
  15.  
  16.   // or "values"
  17.   display: 'sum',
  18.  
  19.   // height of the dropdown
  20.   trayHeight: '240px',
  21.  
  22.   // false = make the dropdown inline block
  23.   dropdown: true,
  24.   
  25. });

4.每次选项更改时都会触发一个函数。

  1. $('#example').vSelect({
  2.   onChange: function(values, options) {
  3.     console.log(values)
  4.   }
  5. });