• 如何在select下拉列表中添加复选框?


      近来在给一个公司做考试系统的项目,遇到的问题不少,但其中的几个让我对表单的使用颇为感兴趣,前端程序员都知道,下拉列表有select标签,复选框有checkbox,但是两者合在一起却少有人去研究,当时接到这样的要求时我也蒙了,于是去网上查相关资料,查了好久,查不出个结果,只好自己用纯html css jq去做一个仿下拉列表中自带复选框的效果,代码如下,可直接复制去查看效果,

    注:(以下代码为本人自己编写,只是一个小Demo,可以直接复制使用,但代码只是演示其效果和功能,告诉大家如何去写,所以界面可能没大家想要的那么漂亮!敬请谅解!0.0.)

    <!DOCTYPE html>

    <html>

    <head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

    *{padding: 0;margin: 0;}

    #wrap{

    width: 500px;

    height: 500px;

    border: 1px solid blue;

    margin: 100px auto;

    }

    #selectBoard{

    width: 300px;

    height: 20px;

    border: 1px solid black;

    border-radius: 5px;

    position: relative;

    margin: 30px auto;

    }

    #selectBoard ul{

    width: 300px;

    background: white;

    position: absolute;

    top: -10px;

    left: -10px;

    border: 1px solid red;

    border-radius: 5px;

    display: none;

    }

    #selectBoard ul li{

    list-style: none;

    }

    #selectBoard ul li:hover{background: dodgerblue;}

    #selectBoard img{

    position: absolute;

    right: 0;

    top: 0;

    width: 30px;

    }

    </style>

    </head>

    <body>

    <div id="wrap">

    <div id="selectBoard">

    <ul>

    <li><input type="checkbox" name="" id="" value="北京" />北京</li>

    <li><input type="checkbox" name="" id="" value="上海" />上海</li>

    <li><input type="checkbox" name="" id="" value="西安" />西安</li>

    <li><input type="checkbox" name="" id="" value="石家庄" />石家庄</li>

    </ul>

    <span id="shuju"></span>

    </div>

    </div>

    </body>

    </html>

    <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>

    <script type="text/javascript">

    //定义一个空数组去接收value值

    var arr = [];

    //仿select的点击事件

    $("#selectBoard").click(function(event){

    var ev = event || window.event;

      //阻止默认事件及封装

    if (ev.stopPropagation) {

    ev.stopPropagation();

    }else{

    ev.cancelable = true;

    }

    $("#selectBoard ul").css("display","block");

    });

     

    $(window).click(function(){

    $("#selectBoard ul").css("display","none");

    });

     //监听checkbox的value值 改变则执行下列操作

    $("input").change(function(){

    if ($(this).prop("checked")) {

    arr.push($(this).val()+",");

    console.log(arr);

    }else{

    arr.shift($(this).val()+",");

    }

    $("#shuju").html(arr);

    });

    </script>

     

     欢迎大家提出建议!!

     

     

     

     

     

     

     

     

     

      

  • 相关阅读:
    并查集
    归并排序
    树的操作
    活动安排
    动态规划-股票交易
    网络流
    linux 展开
    linux 反引号、单引号、双引号
    linux 命令行快捷键
    判断一个点是否在三角形内部和边界上
  • 原文地址:https://www.cnblogs.com/sunweinan/p/select---checkbox.html
Copyright © 2020-2023  润新知