zoukankan      html  css  js  c++  java
  • flexigrid扩展(添加全选,格式化表单)

    1.关于flexigrid的属性这里不多说,百度一大把。

       这里主要说一个参数process

        process参数:编写对某一列进行自定义处理的函数 function 方法名(tddiv,pid){}//tddiv:每个td内div对象的innerHTML, pid:td所在tr的id值

        添加全选按钮的思路:

        1.<thead>添加checkbox

     colModel : [       {display : '<input type="checkbox" name="check_all" onclick="CheckAll();" id="check_all" >',
    
                name : 'checkall',
    
                width : 30,
    
            sortable : false,
    
                 align : 'center'
    
           process:seldel(自定义方法名)
    
          }],

        2.<tbody>中每一行添加checked

       function seldel(val,id){
    
           val.innerHTML="<input type="checkbox" onclick="alert(333)">"
    
       }

       3. 添加全选事件
            大家都知道,对全选的checkbox添加onclick事件使子checkbox checked。

            但是在处理onclick事件获取全选checkbox的checked的值时出现异常:即使在上面打勾了,获取的值也为默认值(false),具体原因没有

    深入查找,可能是因为和flexigrid中div冲突吧

           于是想起了input中的hidden了,每次onclick时,为hidden的value设置1/0,用该值判断全选按钮是否被选中,当然添加一个tr也可以,设置style="display:none"

    //全选
        function CheckAll(){
            var state = true;
            var textCheck = document.getElementById("test").value;
            if(textCheck=="0"){
                state = false;
    //全选textCheck="1"不要犯这种低级错误哦,这样赋值是赋不上的
    document.getElementById(
    "test").value="1"; }else{ document.getElementById("test").value="0"; } var check_ids = document.getElementsByName("check_id"); for(var i=0; i<check_ids.length; i++){ if(!check_ids[i].disabled){ check_ids[i].checked = state; } } }

      

  • 相关阅读:
    Spring 总结
    分布式缓存Memcache
    Docker原理 -- namespace与CGroup
    JDK源码分析--Collections
    React生命周期总结
    【转】前端优化的35条
    http缓存与cdn相关技术
    跨域处理
    sequekize
    orm2
  • 原文地址:https://www.cnblogs.com/liuxiuhao/p/flexigridcheckbox.html
Copyright © 2011-2022 走看看