zoukankan      html  css  js  c++  java
  • 对于多选框数据处理的总结

    近期项目遇到了多选框的需求,过程中遇到了些问题,后来经过优化较好实现了需求,现做总结以便日后借鉴。界面布局大致如下图:

      初期拿到需求后,脑海中第一感觉是:选中的时候给数组中push对应项的id,取消的时候从数组中找到对应项并删除id,最后拼装好的数组就是需要提交到后台去请求接口的。开发过程中渐渐发现这种方法的一个主要缺点:繁琐!

      改进后的方法是,在点击多选框的时候不去做数据处理,只展示点击效果。最后在请求数据之前,再去赋值,即哪一项选中就给数组中存对应项的id。这样就少去了取消选中从数组中删除对应项id的处理,减少了代码量。

      当然,还是需要看具体需求,但是这种方法适用于大多数情景。

      最后,记录一个常用的数组去重方法:

    var a=[1,2,3,2,2,23,4,3];
    var b=[];
    
    for(var i=0;i<a.length;i++){
        if(b.indexOf(a[i])===-1){
            console.log("b中没有重复的这一项,就存进去,达到‘去重’的目的");
            b.push(a[i]);
        }
    }
    console.log(b);
  • 相关阅读:
    CodeForces gym Nasta Rabbara lct
    bzoj 4025 二分图 lct
    CodeForces 785E Anton and Permutation
    bzoj 3669 魔法森林
    模板汇总——快读 fread
    bzoj2049 Cave 洞穴勘测 lct
    bzoj 2002 弹飞绵羊 lct裸题
    HDU 6394 Tree 分块 || lct
    HDU 6364 Ringland
    nyoj221_Tree_subsequent_traversal
  • 原文地址:https://www.cnblogs.com/li-you/p/7202464.html
Copyright © 2011-2022 走看看