Dorado7多选框

Dorado7是基于Extjs4的,D7的checkbox只能表示一个数值的2个状态(true、false但是有三种状态可选的:半选中状态)。
如果你想实现以下功能,那原始组件肯定实现不了:
复选框
你需要建一个container,然后包含多个checkbox,如下图:
这里写图片描述
要在DataSet的loaddata里设置checkbox的显示

var mzdyid=ds.getData("#").get("mzdyid");
    var comboxcount=4;
   for(var i=1;i<=comboxcount;i++){
        view.get("#combox"+i).set("checked",false);
        }   

console.log(mzdyid);
if(mzdyid!=null){
var mzdyids=mzdyid.split(",");
for(var i=0;i<mzdyids.length;i++){
    view.get("#combox"+mzdyids[i]).set("checked",true);
}
}

最后,在数据提交时,也要记得把checkbox的值传进dataset

var comboxcount=4;
for(var i=1;i<=comboxcount;i++){

    if(view.get("#combox"+i).get("checked")){
        if(i<comboxcount-1){
            sql=sql+i+",";
        }else{
            sql=sql+i;
        }

    }

}
if(sql!=entity.get("mzdyid")){
    entity.set("mzdyid",sql);
    self.execute();
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章