带多选框的下拉列表「建议收藏」

带多选框的下拉列表「建议收藏」之前想写一个带多选框的下拉列表,然后找相关的内容,发现大多都是用select写的,这种是默认的下拉列表样式,但有时候需要自己来写样式,这样用select就不合适了。然后我就在csdn中无意间发现了一位博主(codingNoob,在此声明一下,他写了很多文章都不错,我还关注了!)是用li写的,只是没有多选框,然后我就用了一些他的代码,在加上自己的代码。<!DOCTYPEhtml&g…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

之前想写一个带多选框的下拉列表,然后找相关的内容,发现大多都是用select写的,这种是默认的下拉列表样式,但有时候需要自己来写样式,这样用select就不合适了。

然后我就在csdn中无意间发现了一位博主(codingNoob,在此声明一下,他写了很多文章都不错,我还关注了!)是用li写的,只是没有多选框,然后我就用了一些他的代码,在加上自己的代码。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <style>
        body{padding:30px;font-family: "微软雅黑";}
        li{list-style: none;}
        *{padding:0;margin:0;}
        #selector{
        	position:relative;
        	height:30px;
        	width:510px;
        	margin-left: 100px;
        	margin-top: 100px;
        	font-size:13px;
        	line-height:30px;
        	text-align:left;        			
        	user-select:none;
        }
        #selector select{display:none;} 
        #selector .arrow{
        	position:absolute;right:5px;top:12px;display:block;height:0;width:0;
        	border-top:8px solid lightgreen;border-right:5px solid transparent;
        	border-left:5px solid transparent;
        }
        #selector .mr-selector{
        	display:block;height:30px;width:500px;
        	padding-left:10px;border:1px solid lightgreen;
        	cursor:default;
        	overflow: hidden;
        }
        #selector .select{display:none;width:510px;margin-top:-1px;border:1px solid lightgreen;}
        #selector .select li{height:30px;line-height:30px;padding-left:10px;}
    </style>
    <link rel="stylesheet" href="xuankuang/iconfont.css" />
    <link rel="stylesheet" href="xuankuang/demo.css" />
    <script src="js/jquery-1.11.0.min.js"></script>
    <title>带多选框的下拉列表</title>
</head>
<body>
    <div id="selector">
        <span class="mr-selector">请选择选项</span>
        <span class="arrow"></span>
        <ul class="select">
            <li><i id="ki1" class="icon iconfont icon-duoxuankuang">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</i>请选择选项</li>
            <li><i class="icon iconfont icon-duoxuankuang">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</i>选项内容一</li>
            <li><i class="icon iconfont icon-duoxuankuang">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</i>选项内容二</li>
            <li><i class="icon iconfont icon-duoxuankuang">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</i>选项内容三</li>
            <li><i class="icon iconfont icon-duoxuankuang">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</i>选项内容四</li>
        </ul>
    </div>
    <script>
        (function(){
            var selector = $("#selector");
            var select = $("#selector .select");  //模拟select的ul选项
            var mrSelector = $("#selector .mr-selector");
            var li = $("#selector .select li"); //li选项
           
            selector.click(function(eve){
                eve.stopPropagation();   //阻止冒泡避免点击后消失    
            });
            mrSelector.click(function(){
                select.toggle();
            });
            li.click(function(eve){
            	var ttt = $(mrSelector).text();
                var index = $(this).index();               
                eee = $(this).find('i').attr("class");
                if(eee=="icon iconfont icon-duoxuankuang"){
                	$(this).find('i').attr("class","icon iconfont icon-duoxuankuang2");
                	if(index==0){
                		var text = $(this).text();  
                		mrSelector.text(ttt);      
	                }else if(index!=0){
	                	var text = ttt+$(this).text();  
	                	mrSelector.text(text);      
	                }
                }else if(eee=="icon iconfont icon-duoxuankuang2"){
                	$(this).find('i').attr("class","icon iconfont icon-duoxuankuang");
                }
            });
            
            $("body").click(function(){
                select.hide();
            });
        }());
    </script>
</body>
</html>

Jetbrains全家桶1年46,售后保障稳定

1、首先是下拉列表的样式:

带多选框的下拉列表「建议收藏」

2、然后我自己添加了多选框,可以点击选中,这个多选框是用了阿里巴巴矢量图库的图标,这个不错,有很多矢量图,可以选择然后加入购物车生成代码,很方便!

带多选框的下拉列表「建议收藏」

3、还有点击就会在上面的框里显示选中的一项的内容。但是这个有一个bug,就是选择取消的时候不能删除相应的文字。这个我暂时还没做出来,有哪位大神知道这个怎么做啊!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/203969.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Android 之 APP上架应用宝平台「建议收藏」

    这个是我自己要上架平台的一个应用,在此写了一篇博客为以后做铺垫。写的有错误请大家提出,我会及时更正,谢谢!下面首先肯定是要去腾讯开放平台上注册账号,不管是个人开发者还是企业的必须要通过资质审核否则你的应用不可能会上线的。上面的是前提工作,也是必要条件,下面的就是开始进行应用的上架步骤了。下面的步骤想必大家都知道怎么做了吧!其实还有需要注意的地方,那就是下面的版权证明,如果是个人开发者还好说,但是

    2022年4月15日
    60
  • 挖矿程序的处理方式及步骤

    挖矿程序的处理方式及步骤概述随着币圈市场交易的活跃,币价也被日益推高。从BTC兑美元的在线交易平台上可以看出,BTC的价格屡创新高,这与MG的2W亿脱不了干系。“重赏之下,必有勇夫”,在互联网圈里也同样适用啊。所以服务器被植入挖矿程序已经不是很稀奇的事情了,很多服务器因为漏洞、弱密码、禁用防火墙等等举措,而被做了提权后,置入了挖矿程序。如果你接收到阿里云类似于挖矿程序的报警,那就不要慌。借用一句话就是:“遇事不要慌,先拍照,发个朋友圈”。挖矿程序的处理方式以下,简单地说一下遇到挖矿…

    2022年6月25日
    42
  • 网卡bonding模式 – bond0、1、4配置

    网卡bonding简介网卡绑定就是把多张物理网卡通过软件虚拟成一个虚拟的网卡,配置完毕后,所有的物理网卡的ip和mac将会变成相同的。多网卡同时工作可以提高网络速度,还可以实现网卡的负载均衡、冗余。bonding模式1    round-robin(mode=0)轮转策略,轮流在每一个slave网卡上发送数据包,提供负载均衡和容错能力。     

    2022年4月7日
    39
  • 逻辑与(&&)、逻辑或(||)、按位与(&)、按位或(|)、按位异或(^)、按位取反(~)

    逻辑与(&&)、逻辑或(||)、按位与(&)、按位或(|)、按位异或(^)、按位取反(~)按位与计算方法:转换为二进制后,不够的位数补齐,然后通过0为false1为true的规则,对每一位之间进行与的运算(只有true+true才为true),最后再将数转回十进制。按位或计算方法:转换为二进制后,不够的位数补齐,然后通过0为false1为true的规则,对每一位之间进行或的运算(只有false+false才为false),最后再将数转回十进制。异或运算这是一种可以不用加号…

    2022年6月6日
    38
  • 罗技键盘怎么连台式电脑_罗技键盘蓝牙搜不到

    罗技键盘怎么连台式电脑_罗技键盘蓝牙搜不到罗技蓝牙键盘连接电脑需装入电池,打开电源开关,转动拨盘至【1】位置,然后长按【PC】键3秒进入【搜索】模式。打开电脑,前往【设置】-【设备】-【蓝牙和其他设备】,打开【蓝牙】,在蓝牙搜索列表中选中罗技蓝牙键盘的名称,确认配对即可完成连接。本文以惠普光影精灵6MAX,MacbookPro(分别连接K835有线键盘和K480蓝牙键盘);Windows10,macOSCatalina10.15.7…

    2022年10月16日
    2
  • 面试阿里,HashMap 这一篇就够了[通俗易懂]

    面试阿里,HashMap 这一篇就够了[通俗易懂]HashMap面试中可能问到的知识点,这边全都有

    2022年5月19日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号