单选多选

<!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">
    <title>Document</title>

    <style>
        * {
            margin: 0;
            padding: 0;
        }

        body {
            background: linear-gradient(#A1E6E9 0%, #fff 100%) no-repeat;
            min-height: 400px;
        }

        .wrap {
            width: 500px;
            margin: 30px auto;
            background: #fff;
            border-radius: 4px;
            box-shadow: 0, 0, 10px #5ab1fd;
            padding: 30px;
        }

        .types .active {
            line-height: 32px;
            border: 2px solid #de4965
        }

        .selects {
            padding: 40px 0 0 0;
        }

        a {
            display: inline-block;
            height: 30px;
            line-height: 30px;
            text-align: center;
            color: #5ab1fd;
            border: 2px solid #5ab1fd;
            padding: 0 25px;
            cursor: pointer;
        }
        .selects a{
            display:inline-block;
            height: 30px;
            line-height: 30px;
            text-align: center;
            border: 2px solid #d7d7d7;
            padding: 0 25px;
            position: relative;
        }
        .selects .active{
            border:2px solid #5AB1FD;
            color:#5AB1FD;
        }
        .select1 .active:after{
            content:"√";
            color:#fff;
            line-height:20px;
            height:20px;
            width:20px;
            border-radius:50%;
            background:#5AB1FD;
            position:absolute;
            right:-5px;
            top:-5px;
        }
        .select2 .active:after{
            content:"√";
            color:#fff;
            line-height:20px;
            height:15px;
            width:15px;
            background:linear-gradient(to right bottom,#fff 0%, #fff 50%, #5AB1FD 50%, #5AB1FD 100%) no-repeat;
            position:absolute;
            right:0px;
            bottom:0px;
            padding:2px 0 0 8px;
        }

    </style>
</head>

<body>
   <div class="wrap">
       <div class="types">
            <a class="active">单选</a>
            <a>多选</a>
       </div>
       <div class="content">
            <div class="selects select1">
                <a class="active">男</a>
                <a >女</a>
                <a >保密</a>
            </div>
            <div class="selects select2" style="display:none">
                <a class="active">呆萌小姐姐</a>
                <a>吃货小姐姐</a>
                <a>逗比小姐姐</a>
                <a>最美小姐姐</a>
            </div>
       </div>
   </div>

    <script>
        var types = document.getElementsByClassName(‘types‘)[0].getElementsByTagName(‘a‘);
        var selects = document.getElementsByClassName(‘selects‘);
        var select1 = selects[0].getElementsByTagName(‘a‘);
        var select2 = selects[1].getElementsByTagName(‘a‘);

        //单选多选切换
        for(var i=0;i<types.length;i++){
            types[i].index = i;//通过序号将index属性存起来
            types[i].onclick = function(){
                var index = this.index;
                for(var j=0;j<types.length;j++){
                    types[j].className=‘‘;
                    selects[j].style.display=‘none‘ // 选择框隐藏
                }
                types[index].className = ‘active‘;
                selects[index].style.display = ‘block‘
            }
        }
        // 单选
       for(var i=0;i<select1.length;i++){
           select1[i].index=i;
           select1[i].onclick=function(){
               var index=this.index;
               for(var j=0;j<select1.length;j++){
                   select1[j].className=‘‘
               }
               select1[index].className=‘active‘
           }
       }
       // 多选
       for(var i=0;i<select2.length;i++){

           select2[i].index = i;
           console.log(11)
           select2[i].onclick=function(){

               var index=this.index;
               if(this.className==‘active‘){
                   this.className=‘‘
               }else{
                   this.className=‘active‘
               }
              // this.className = this.className ? "" : "active";
           }
       }
    </script>
</body>
</html>

原文地址:https://www.cnblogs.com/yang656/p/9798720.html

时间: 2024-10-19 19:57:00

单选多选的相关文章

jQuery如何判断和设定单选多选是否选中??

  如何判断HTML中的单选多选是否选中呢?  这是web编程中最常用的判断,可是前段时间,却遇到了一个很奇怪的问题. 我想很多人会这样判断 if($("#weixuanzhong").attr("checked")=="checked")//选中时 { } 但如果是如下的HTML代码: <input type="checkbox" checked="checked" value="male

[SAP ABAP开发技术总结]选择屏幕——按钮、单选复选框

目录导航 声明:原创作品,转载时请注明文章来自SAP师太博客,并以超链接形式标明文章原始出处,否则将追究法律责任!原文出自: 12.6.         按钮.单选复选框.下拉框的FunCode. 91 12.6.1.     选择屏幕中的按钮... 92 12.6.2.     选择屏幕中的单选/复选按钮:点击时显示.隐藏其他屏幕元素... 92 12.6.     按钮.单选复选框.下拉框的FunCode 如果复选框与单选按钮没有设置Function Code,则它们就会像普通的输入框一样,

初识安卓小程序(开关灯——单选多选按钮控制)

如图: 点击单选按钮"开灯",多选按钮就会显示"关灯"且方块里有对勾:反之,点多选按钮,单选按钮也自动改变. 首先,先创建一个安卓项目(我的版本是4.4.2的),名字为"bulb",把两张图片:开灯与关灯状态的图片放入"drawable-"随意一个文件夹下 然后在res文件夹下找到layout文件夹,找到activity_main.xml或fragment_main.xml,在里面输入或拖拽按钮 <RelativeLay

iOS——UITableView单选模式,多选模式,单选多选混合模式

70行代码量的UITableViewCell实现单选,多选,单选多选混合选择. SingleVC——50行 MultipleVC——55行 ChaosVC——80行 cell为Xib拓展性较好,可拿去直接使用. 代码量不是越少越好,还要容易阅读,这里突出代码量的意思仅仅是建立在简单易用的原则上,有不明白可以跟帖,有大神优化的话跪求恩赐. github: https://github.com/ZyZwei/iOS_SelectStyle.git coding: https://git.coding

android 实现调查问卷-单选-多选

很久没写东西了,今天来总结下有关android调查问卷的需求实现. 转载请加地址:http://blog.csdn.net/jing110fei/article/details/46618229 先上效果图 个人分析,最好是用动态布局加载来实现,好了,说思路,将这整体分为3块 最外面这个布局里面,根据第二层问题的数量来动态生成布局,加入在第一层布局里面, 然后再根据问题下答案的数量来动态生成布局,加入第二层布局里面,思路这么透彻,想想还有些小激动呢. 先建造三个实体类 public class

JS-001-JavaScript 操作常见 web 元素之一-单选复选

此文主要针对 web 页面中常见元素(例如:单选按钮.复选按钮)的 JavaScript 操作,进行简单的源码示例演示,敬请小主们参阅.若有不足之处,敬请大神指正,不胜感激! 话不多言了,直接上码: 1 <html> 2 <head> 3 <meta charset='utf-8'> 4 5 <title>JS-001-JavaScript 操作常见 web 元素之一-单选复选</title> 6 7 <link rel="sty

关于单选复选框

<!DOCTYPE html><html><head><meta charset="utf-8"><title>单选复选框</title><link href="style.css" rel="stylesheet"></head><body bgcolor="pink"> <center><h1 st

简单的纯css重置input单选多选按钮的样式--利用伪类

由于input单选多选的原生样式通常都不符合需求,所以在实现功能时通常都需要美化按钮 html <input type="radio" /> <input type="checkbox" /> css input{visibility: hidden;} // 让原生按钮不显示 input::before{ content: "";visibility: visible;display:inline-block; widt

jquery小练习 单选多选 二级联动 员工信息的添加与删除

单选多选与全选 就是点击按钮从左边把内容一道右边 <!DOCTYPE html><html>    <head>        <meta charset="UTF-8">        <title></title>    </head>    <script type="text/javascript" src="js/jquery-3.4.1.min.js&qu