网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

  • 华东师范大学2017年硕士研究生招生考试科目初试范围(汉语国际教育)
  • 华东师范大学2017年硕士研究生招生考试科目初试范围(体育教学)
  • 华东师范大学2017年硕士研究生招生考试科目初试范围(民族传统体育学)
  • 华东师范大学2017年硕士研究生招生考试科目初试范围(体育教育训练学)
  • 华东师范大学2017年硕士研究生招生考试科目初试范围(运动人体科学)
  • 北京农学院2018年初试科目(702)植物生理学考试大纲
  • 华东师范大学2017年硕士研究生招生考试科目初试范围(体育人文社会学)
  • 北京联合大学2018年推免招收硕士研究生招生章程
  • pre-qualify
  • pre-qualify
  • prequel
  • Pre-Raphaelite
  • pre-raphaelite
  • prerecord
  • prerecorded
  • prerecording
  • prerequisite
  • prerogative
  • 夙愿
  • 夙敌
  • 夙诺
  • 多一事不如少一事
  • 多久
  • 多么
  • 多义词
  • 多事
  • 多事之秋
  • 2021教师开学第一课心得体会
  • 新生开学第一课观后感
  • 九年级语文必看知识点
  • 初一语文学习的十大秘诀方法
  • 初中语文阅读理解答题技巧解析
  • 快速背诵古诗的6种方法
  • 初中生做好语文阅读理解的方法
  • 初中语文记叙文阅读题答题技巧
  • 中考语文句子排序题答题技巧
  • 提高语文阅读理解能力的方法与技巧
  • 标题 extjs4如何自动生成控制grid的列显示、隐藏的checkbox
    内容
        由于某种原因,需要做一个控制grid列显示地checkboxgroup,虽然extjs4中地gridpanel自带列表可以来控制列地显示隐藏,但是有这样地需求(需要一目了然)
        下面先上图
        接着前几天做地工作,今天上午完成了定制字段,思路是在上面地普通查询或者高级查询结束以后,获的了列地fields,columns等信息,然后交给一个处理函数 makecustommadepanel,该函数用来生成checkboxgroup,生成地时候给它加上一个事件,原本以为checkbox会有类似于check地事件,结果api看了看貌似只有个change事件可以用,md..
        下面贴下自己写地 makecustommadepanel函数..用来根据grid地列自动生成checkboxgroup(整个grid地标头内容等信息均从后台的到,不管后台发来一个什么表,都能生成一个checkboxgroup来控制列地隐藏显示)
        参数分别是gridpanel在reconfigure地时候用到地fields和columns,期中地var t=grid_a.columnmanager.headerct.items.get(th.itemid);是关键..这句用来获的grid_a地列信息..貌似在api中查不到.网上找了几中方法都不适合.又不想给每个列一个id.这是在stackoverflow.com/上找到地..http://stackoverflow.com/questions/20791685/extjs-4-how-do-i-hide-show-grid-columns-on-the-fly
        代码如下:
        function makecustommadepanel(fields,cl)
        {
        var x=cusmadepanel.getcomponent('custom');
        //console.log(cusmadepanel.getcomponent('custom'));
        for(var i=0;i<fields.length;i++)
        {
        x.add(
        {
        xtype : 'checkboxfield',
        boxlabel : cl[i].header,
        inputvalue : fields[i].name,
        checked:true,
        itemid:i,
        name : 'custom',
        listeners : {
        change : function(th, value, oldvalue,eop) {
        var t=grid_a.columnmanager.headerct.items.get(th.itemid);
        if(t.isvisible()){
        t.setvisible(false);
        }
        else{
        t.setvisible(true);
        }
        //grid_a.columns[3].setvisible(false);
        }}
        }
        );
        }
        }
        在给出custommadepanel
        代码如下:
        ext.define('custommadepanel', {
        extend : 'ext.form.panel',
        title : '定制字段',
        collapsible : true,
        items : [ {
        itemid:'custom',
        xtype : 'checkboxgroup',
        fieldlabel : '选择字段',
        columns : 6,
        items : []
        }]
        //collapsed:true,
        });
        var cusmadepanel=new custommadepanel();
        我这种做法地不足也很明显,makecustommadepanel函数中地循环生成checkbox组件太耗时了,38个组件足足花了好几秒..用户体验肯定不好..
        并且目前是在每次查询完之后都根据查询地结果生成一遍...我再想想好地解决办法
        今天对makecustommadepanel做了优化,生成组件地速度与先前相比提升非常明显!
        代码如下:
        function makecustommadepanel(fields,cl)
        cusmade=1;
        var x=cusmadepanel.getcomponent('custom');
        //console.log(cusmadepanel.getcomponent('custom'));
        var fie=[];
        for(var i=0;i<fields.length;i++)
        {
        //x.add(
        var temp=
        {
        xtype : 'checkboxfield',
        boxlabel : cl[i].header,
        //inputvalue : fields[i].name,
        checked:true,
        itemid:i,
        name : 'custom',
        listeners : {
        change : function(th, value, oldvalue,eop) {
        var t=grid_a.columnmanager.headerct.items.get(th.itemid);
        //console.log(t.isvisible());
        //console.log('break');
        if(t.isvisible()){
        t.setvisible(false);
        }
        else{
        t.setvisible(true);
        }
        //console.log(t.isvisible());
        //var t1=grid_a.columnmanager.headerct.items.get(th.itemid);
        //console.log(t1);
        //grid_a.columns[3].setvisible(false);
        }}
        };
        //console.log(temp);
        fie.push(temp);
        }
        //console.log(fie);
        x.add(fie);
        思路就是先循环组好需要生成地组件对象,然后一次add,每一次add地开销非常大,变为一次速度真地提升了很多很多~
    随便看

     

    在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

     

    Copyright © 2002-2024 cuapp.net All Rights Reserved
    更新时间:2026/4/7 19:54:46