前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >select 遇到的坑

select 遇到的坑

作者头像
用户1148399
发布2018-01-09 15:48:44
1K0
发布2018-01-09 15:48:44
举报
文章被收录于专栏:web前端web前端web前端

一、select遇到的坑

     1、select赋默认值--多选和单选

          1.1     单选:$('#id').val( value );     //这里是字符串

          1.2     多选:$('#id').val( array );     //这里必须将多个值组成的字符串(或者其他非数组)转化成数组

               1.2.1     字符串转数组:str.split(",");     //改变原字符串,不创建新的数组,所以改变原字符串为数组,只需要    str.split(",");即可

               1.2.2     数组转字符串:array.join(",");     //创建新的字符串,不会改变原来的数据,所以如果需要修改原数组为字符串,需要将array = array.join(",");

               1.2.3     类似的splice()方法改变原数据,slice方法创建新的数据,不改变原数据

     2、select中没有特定option选项,但是需要将此值设为默认值(业务需求)

          2.1     概念性理解:select赋值(或者默认值)是建立在option选项存在的条件下(option中的value),没有某option,则该值无法被赋值

          2.2     将该option选项设置为disabled。但是此时disabled的数据,后台无法获取---》可以在提交的时候,将原本disabled的数据变为可编辑

          《 $('.disabled').attr("disabled", true) --> $('.disabled').attr("disabled", false)

          2.3     将option选项display: hidden;     //无效!!!

     3、使用select2插件,select框中需要设置互斥选项     (例如:当选择全部的时候,其他选项清空只有全部,当选择其他选项时,没有全部这个选项,即互斥。或者说两者之间选择后选项(后面选择的项替代当前选项))

             $('#areaItem').on('change', function() {     // select 改变事件
                        var _this = $(this);
                        var codes = _this.val();
                        if (codes[0] === '0') {     //0代表全部
                            _this.val(0);
                            _this.trigger('change.select2');
                        }
                    });
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-08-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档