jQuery模拟html下拉多选框的原生实现方法示例


Posted in jQuery onMay 30, 2019

本文实例讲述了jQuery模拟html下拉多选框的原生实现方法。分享给大家供大家参考,具体如下:

用js, html, css 简单的实现一个HTML 下拉多选框,不试用其他框架的情况下,可以借鉴一下,如果用jqueryUI, BOOTSTRAP, 就没必要参考了。毕竟那些现成的东西更好用。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>3water.com jQuery模拟select</title>
 <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
 <style>
 body {
 font: normal 14px/100% "Andale Mono", AndaleMono, monospace;
 color: #fff;
 padding: 50px;
 width: 300px;
 margin: 0 auto;
 background-color: #374954;
}
.dropdown {
 position: absolute;
 top:50%;
 transform: translateY(-50%);
}
a {
 color: #fff;
}
.dropdown dd,
.dropdown dt {
 margin: 0px;
 padding: 0px;
}
.dropdown ul {
 margin: -1px 0 0 0;
}
.dropdown dd {
 position: relative;
}
.dropdown a,
.dropdown a:visited {
 color: #fff;
 text-decoration: none;
 outline: none;
 font-size: 12px;
}
.dropdown dt a {
 background-color: #4F6877;
 display: block;
 padding: 8px 20px 5px 10px;
 min-height: 25px;
 line-height: 24px;
 overflow: hidden;
 border: 0;
 width: 272px;
}
.dropdown dt a span,
.multiSel span {
 cursor: pointer;
 display: inline-block;
 padding: 0 5px 2px 0;
}
.dropdown dd ul {
 background-color: #4F6877;
 border: 0;
 color: #fff;
 display: none;
 left: 0px;
 padding: 2px 15px 2px 5px;
 position: absolute;
 top: 2px;
 width: 240px;
 list-style: none;
 height: auto;
 overflow: auto;
 margin-top:30px;
}
.dropdown span.value {
 display: none;
}
.dropdown dd ul li a {
 padding: 5px;
 display: block;
}
.dropdown dd ul li a:hover {
 background-color: #fff;
}
button {
 background-color: #6BBE92;
 width: 302px;
 border: 0;
 padding: 10px 0;
 margin: 5px 0;
 text-align: center;
 color: #fff;
 font-weight: bold;
}
 </style>
</head>
<body>
<dl class="dropdown">
 <dt>
 <div style="">
  <div class="multiSel" style="width:150px;background:#fff;padding: 8px 20px 5px 10px;height:20px;color:#000;float:left;"></div>
  <div class="mydropdown" style="width:50px;background:#fff;padding: 8px 20px 5px 10px;height:20px;color:#000;float:left;">sss</div>
 </div>
 </dt>
 <dd>
  <div class="mutliSelect">
   <ul>
    <li>
     <input type="checkbox" value="Apple" />Apple</li>
    <li>
     <input type="checkbox" value="Blackberry" />Blackberry</li>
    <li>
     <input type="checkbox" value="HTC" />HTC</li>
    <li>
     <input type="checkbox" value="Sony Ericson" />Sony Ericson</li>
    <li>
     <input type="checkbox" value="Motorola" />Motorola</li>
    <li>
     <input type="checkbox" value="Nokia" />Nokia</li>
   </ul>
  </div>
 </dd>
</dl>
<script>
 $(".dropdown dt .mydropdown").on('click', function() {
  $(".dropdown dd ul").slideToggle('fast');
 });
$(".dropdown dd ul li a").on('click', function() {
 $(".dropdown dd ul").hide();
});
function getSelectedValue(id) {
 return $("#" + id).find("dt a span.value").html();
}
$(document).bind('click', function(e) {
 var $clicked = $(e.target);
 if (!$clicked.parents().hasClass("dropdown")) $(".dropdown dd ul").hide();
});
$('.mutliSelect input[type="checkbox"]').on('click', function() {
 var title = $(this).closest('.mutliSelect').find('input[type="checkbox"]').val(),
 title = $(this).val() + ",";
 if ($(this).is(':checked')) {
 var html = '<span title="' + title + '">' + title + '</span>';
 $('.multiSel').append(html);
 } else {
 $('span[title="' + title + '"]').remove();
 }
});
 </script>
</body>
</html>

运行效果:

jQuery模拟html下拉多选框的原生实现方法示例

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery 添加样式属性的优先级别方法(推荐)
Jun 08 jQuery
jQuery自定义多选下拉框效果
Jun 19 jQuery
jQuery实现上传图片前预览效果功能
Aug 03 jQuery
jqueryUI tab标签页代码分享
Oct 09 jQuery
解决JQuery全选/反选第二次失效的问题
Oct 11 jQuery
jQuery实现切换隐藏与显示同时切换图标功能
Oct 29 jQuery
jQuery实现所有验证通过方可提交的表单验证
Nov 21 jQuery
jquery自定义显示消息数量
Dec 19 jQuery
jQuery实现DIV响应鼠标滑过由下向上展开效果示例【测试可用】
Apr 26 jQuery
JQuery通过后台获取数据遍历到前台的方法
Aug 13 jQuery
jquery实现点击弹出对话框
Feb 08 jQuery
jQuery三组基本动画与自定义动画操作实例总结
May 09 jQuery
JS拖动选择table里的单元格完整实例【基于jQuery】
May 28 #jQuery
jquery实现Ajax请求的几种常见方式总结
May 28 #jQuery
jquery操作select常见方法大全【7种情况】
May 28 #jQuery
jQuery实现高级检索功能
May 28 #jQuery
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
May 27 #jQuery
jquery实现动态创建form并提交的方法示例
May 27 #jQuery
jquery实现动态改变css样式的方法分析
May 27 #jQuery
You might like
php通过获取头信息判断图片类型的方法
2015/06/26 PHP
PHP常用函数总结(180多个)
2016/12/25 PHP
一个js实现的所谓的滑动门
2007/05/23 Javascript
Jquery事件的连接使用示例
2013/06/18 Javascript
JQueryiframe页面操作父页面中的元素与方法(实例讲解)
2013/11/19 Javascript
jQuery实现精美的多级下拉菜单特效
2015/03/14 Javascript
详解JavaScript正则表达式中的global属性的使用
2015/06/16 Javascript
轻松实现javascript图片轮播特效
2016/01/13 Javascript
sencha ext js 6 快速入门(必看)
2016/06/01 Javascript
几行js代码实现自适应
2017/02/24 Javascript
NodeJS实现图片上传代码(Express)
2017/06/30 NodeJs
基于Vue实例生命周期(全面解析)
2017/08/16 Javascript
Iphone手机、安卓手机浏览器控制默认缩放大小的方法总结(附代码)
2017/08/18 Javascript
详解从新建vue项目到引入组件Element的方法
2017/08/29 Javascript
使用Node.js写一个代码生成器的方法步骤
2019/05/10 Javascript
Python自然语言处理之词干,词形与最大匹配算法代码详解
2017/11/16 Python
python 限制函数调用次数的实例讲解
2018/04/21 Python
python实现数据导出到excel的示例--普通格式
2018/05/03 Python
python 按不同维度求和,最值,均值的实例
2018/06/28 Python
Python开发的十个小贴士和技巧及长常犯错误
2018/09/27 Python
python实现AES和RSA加解密的方法
2019/03/28 Python
Pycharm 字体大小调整设置的方法实现
2019/09/27 Python
使用Python实现 学生学籍管理系统
2019/11/26 Python
关于python pycharm中输出的内容不全的解决办法
2020/01/10 Python
详解CSS3媒体查询响应式布局bootstrap 框架原理实战(推荐)
2020/11/16 HTML / CSS
美国高街时尚品牌:OASAP
2016/07/24 全球购物
Paper Cape官网:美国婴儿和儿童服装品牌
2019/11/02 全球购物
应聘编辑职位自荐信范文
2014/01/05 职场文书
11月红领巾广播稿
2014/01/17 职场文书
食品采购员岗位职责
2014/04/14 职场文书
节能减耗标语
2014/06/21 职场文书
服务承诺书
2015/01/19 职场文书
被告代理词范文
2015/05/25 职场文书
优秀党员主要事迹范文
2015/11/05 职场文书
高考要来啦!用Python爬取历年高考数据并分析
2021/06/03 Python
SQL中的三种去重方法小结
2021/11/01 SQL Server