yhq5230 2010-11-11 12:21
浏览 428
已采纳

急........求Extjs CheckboxGroup动态添加checkBox 跪谢

    var MyCheckboxGroup=Ext.extend(Ext.form.CheckboxGroup,{
        /**
        *@description 多少列显示数据
        */
        columns:3,
        fieldLabel: '元素类型',   
        id:'ElementTypeID',
        name :'ElementTypeID',
        anchor:"95%",
        items:[{
                          xtype: 'checkbox',
                          fieldLabel: 'Auto Layout'
                        }//如果我这里没加这个组件的话,下面的roomType.items[0]与roomType.panel就会报undefined的错误
                   ]
    });
    var roomType = new MyCheckboxGroup();
    function getReceiveType(){
        var dataUrl = '/d9inn/receive.do?method=initReceiveType';
        Ext.Ajax.request({
                           url:dataUrl,
                           success:function(response){
                              var result = Ext.decode(response.responseText);
                             var data = result.msg;
                             for(var i=0;i<data.length;i++){
                               var d=data[i];         
                               alert(d.name+"------"+d.value);//我这里已经获取到了从后台传回的值了
                               var chk = new Ext.form.Checkbox({boxLabel: d.name,fieldLabel:"这是对的", inputValue: d.value});
                               roomType.items[0]=chk; //可是我这样添加时,页面上却没有显示出checkBox
                               alert(roomType.items.length);
                             }
                             roomType.panel.doLayout();
                           }
                        });
    }
         getReceiveType();
              该用什么方法把实例化好的checkBox组件添加到checkBoxGroup中去,先谢谢了 啊
  • 写回答

1条回答 默认 最新

  • cyrilluce 2010-11-11 15:14
    关注

    CheckboxGroup及RadioGroup是我个人觉得Ext中比较“恶心”的组件……
    它继承自Ext.form.Field,但又想表现为容器。

    它构造时,会将配置中的items及columns等拿来处理,生成一个对应的panel,这个处理只有一次。所以,基本上动态修改很难很难,并且容易出问题。

    给你的建议:
    1. 不使用CheckboxGroup,动态的东西用ListView或Grid比较合适,DataView也不错,简单易用。
    2. 实在想要CheckboxGroup的样式,可以试着动态创建CheckboxGroup,而不是动态添加子组件。相对来说要处理的东西就少很多了。(可以将组件改为容器,调用接口后请求数据,请求完毕先清空容器,再构造一个CheckboxGroup到容器内,并重新布局)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大