提笔写正文之前,首先要再次提醒一下自己,因为总是记不住,以至大神同事们都开始用“嫌弃”的眼光看自己了——         记得使用easyui中的combobox吗?效果是酱紫滴:

平常使用的时候,也就是很普通的下拉选框,即单选,但是我们工作中却遇到了将这个下拉选框做成多选框的样式,即:

其实也就是在平常引用中增加了一个“多选”的属性:

<input id="steels" name="stids" class="easyui-combobox" data-options="prompt:'请选择钢厂',valueField:'id',textField:'name',multiple:true,url:'/vip/users/steellist',
panelHeight:'200px'" style="width: 150px">

问题就酱紫出现了:

在第一个选项之前,莫名其妙的多了一个逗号。这个问题,其实从自己刚开始做项目之前就发现了,可当时这也是“偶发性”,自己并没有搞清楚为什么会出现这样的情况,也就有点侥幸心理,想着最后再解决,直到今天,手边的工作快结束了,这个bug便被彻底的翻出来了,于是一个小一个下午的时间,都在研究这究竟是怎么一回事,或许是从来对自己都没有信心吧,在专业问题上,总是不敢说出自己的想法,以至于到最后还是请教了大神上司,结果可想而知:挨骂那是必须的~~(这周,是哪里出现问题了,总是让人以为自己不再状态,错误频出,希望下周进入状态吧!

又扯远了……回到正题:

关于逗号这个问题,其实关键并不在于combobox本身组件问题,而是由于自己自身原因:因为我们现在做的项目基本都要做“增删改查”,比如新增上去新会员,接着就应该将刚才新增的内容回显在页面上,而我却使用了一个“偷空减料”的方法,因为整个修改的页面是写在form表单中的,因此在回显数据的时候,直接是酱紫滴:

 jQuery("#addForm").form("load", row); //赋值,回显数据

本以为天衣无缝、巧夺天工,却不曾想自己忘记了一个重大的问题:新增或者修改的页面是写在form表单中的,但是上述的多选框的数据在load之前,若数据库里面没数据,即此值为空的情况下,load进去的话,会默认给加一个“”,这也就是为什么在第一个数据之前出现了逗号,最开始的时候,曾以为这是这个组件本身的bug,没成想是自己的问题,真觉得汗颜!最终的解决方案就是:

 jQuery('#steels').combobox('clear');
jQuery("#addForm").form("load", row); //赋值

在load值之前,先将该下拉框的值清空,这样就把其中的“”删掉了。

总结:

datetimebox也有clear方法了,结果就出现了时间控件中的值如果是粘贴或者复制过来的,它就是无效的,正确的便是给它.("setValue",""),setValue为空;

2.遇事,一定自己先解决,一定呢!

作者:郑叶叶


出处:http://www.cnblogs.com/zhengyeye

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

easyui comboBox的多选框之疑难杂症——逗号篇的更多相关文章

  1. comboBox的多选框之疑难杂症——逗号篇

    提笔写正文之前,首先要再次提醒一下自己,因为总是记不住,以至大神同事们都开始用“嫌弃”的眼光看自己了——遇到问题,自己去解决,没有什么问题是解决不掉的,不要在没认真努力思考之前就去麻烦大神同事,切记切 ...

  2. easyui datagrid 通过复选框删除新追加的数据问题

    之前写好的功能在保存好数据后再通过复选框删除是没有问题的,可现在想多追加几行,然后选择删除新追加的某几行或一行,通过$('#dg').datagrid('getChecked')方法返回选中行,然而返 ...

  3. easyUI 创建有复选框的table.datagrid

    table : function(data){ pt.v.table.datagrid({ // singleSelect:true, height:295, columns:[[ {field:'x ...

  4. 判断easyUI tree 节点复选框是否被选中的方法。将选中的节点高亮显示的方法

    在datagrid tree中如何判断某个节点的复选框是否被选中? 我们可以通过HTML结构去分析: 1.节点未选中前 2.节点选中后 所以节点被选中前和选中后,html中的class类是用区分的. ...

  5. EasyUI combobox实现下拉框多选遇坑记录

    场景一: 多选正常从第二个选项增加逗号,我选第一个的时候就冒出一个逗号 解决方案一: 这是因为当前的下拉框的值可能为undefined,需要手动清空一下 $("#id").comb ...

  6. combobox添加复选框

    问题: 需求提出要做一个下拉框可以多选的 解决方案: //机构树 function initOrgTree() { $('#reportOrg').combobox({ width: 200, edi ...

  7. Easyui datagrid 隐藏多选框 checkbox

    在加载 表格的时候添加事件:onLoadSuccess 在事件中写入下面句,用空代替原有HTML 达到取消效果. $(".datagrid-header-check").html( ...

  8. easyui的combobox将得到的数据设定为下拉框默认值和复选框设定默认值

    通过easyui做了一个表,表里是从数据库拿到的数据. 现在双击某一行,通过点击行的id取到这一行的所有数据,现在需要修改这些得到的数据, 其中部分数据是<select>这个选择的, 问题 ...

  9. 关于easyui combobox下拉框实现多选框的实现

    好长时间没有更博了,一是因为最近真的比较忙,二是因为自己是真的偷懒了,哈哈 好啦,这篇博客主要是总结一些关于easyui combobox下拉框实现多选框的实现,包括前台界面的展示,和后台对数据的获取 ...

随机推荐

  1. P4831-Scarlet loves WenHuaKe【组合数学】

    正题 题目链接:https://www.luogu.com.cn/problem/P4831 题目大意 \(n*m\)的网格上放置\(2n\)个炮,要求互不能攻击. 数据满足\(n\leq m\leq ...

  2. Python实现一个简单三层神经网络的搭建并测试

    python实现一个简单三层神经网络的搭建(有代码) 废话不多说了,直接步入正题,一个完整的神经网络一般由三层构成:输入层,隐藏层(可以有多层)和输出层.本文所构建的神经网络隐藏层只有一层.一个神经网 ...

  3. 如何从阿里云Code升级至云效Codeup

    如果你还在使用阿里云Code,不防看看如何从阿里云Code升级至云效Codeup,云效代码管理Codeup是阿里云出品的一款企业级代码管理平台,提供代码托管.代码评审.代码扫描.质量检测等功能,全方位 ...

  4. MySQL高可用架构-MMM、MHA、MGR、PXC

    主从复制如何工作 在主库把数据记录到binlog(二进制日志). 备库开IO线程把binlog复制到自己的relaylog(中继日志). 备库读取中继日志,重放到备库上. 半同步复制 半同步复制可以确 ...

  5. 11.5.2 LVS-NAT 实验

    NAT拓扑 lvs-server VIP:10.211.55.99DIP:10.37.129.99 负载均衡器 开启路由功能(VIP桥接,DIP仅主机) rs01 RIP:10.37.129.3 后端 ...

  6. res目录下的结构

    目录 res目录下的结构 drawable开头的文件夹 mipmap开头的文件夹 values开头的文件夹 layout文件夹 使用res目录下的资源 res目录下的结构 如果你展开res目录看一下, ...

  7. 力扣 - 剑指 Offer 17. 打印从1到最大的n位数

    题目 剑指 Offer 17. 打印从1到最大的n位数 思路1 如果有n位,那么最大值就是\(10^n-1\),即如果n是2,那么最大就到输出到99 考虑到大数情况,所以使用字符数组 还要把字符数组转 ...

  8. 手把手教你写hexo博客

    市面上现在有各种博客框架,本博客教大家的是Hexo博客框架,目前比较火.搭建博客中遇到各种各样问题,网上方案也比较成熟. 一.搭建环境 安装 git 安装 node.js 安装 Hexo npm in ...

  9. Vim合并行

    日常常用到多行合并的功能,记录如下: 第一种, 多行合并成一行,即: AAAAABBBBBCCCCC 合并为:AAAAA BBBBB CCCCC 方法1: normal状态下 3J 其中的3是范围,可 ...

  10. django-admin和django-admin.py的区别

    问题 django初学者在使用django-admin创建项目时容易出现无法创建的错误,这是因为网上很多教程用的都是django-admin.py创建的项目,不出意外的话,你输入相同的命令会发现项目没 ...