dorado动态创建autoform

这篇博客展示了如何在Dorado7中动态地创建和填充AutoForm元素。通过遍历数据集,创建并设置AutoFormElement的属性,然后将其添加到对应的AutoForm中,最后显示在界面上。此外,还涉及到数据的处理和更新,以及Tab控件的使用来展示行动计划。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

var total = arg.dataSet._data._keyMap;//三条数据汇总
var count=1;
var temp=0;
var temp1=0;
for (var list in total){//循环总数据
    for(var key in total[list]._data){//循环每条数据
        if(key!="$dataType"  &&  key!="type" && key!="id" && key!="q1"){
        if(total[list]._data[key]!=null){
                if(count==1){
                    var e= new dorado.widget.autoform.AutoFormElement();
                    var e1= new dorado.widget.autoform.AutoFormElement();
                    e.set("label",total[list]._data[key]);
                    e.set("name",key);
                    e1.set("label",total[list]._data[key]);
                    e1.set("name",key);
                    view.get("#autoform1").addElement(e);
                    view.get("#autoform2").addElement(e1);
                }else if(count==2){
                    view.get("#autoform1")._children[temp].set("value",total[list]._data[key]);
                    temp++;
                }else if(count==3){
                    view.get("#autoform2")._children[temp1].set("value",total[list]._data[key]);
                    temp1++;
                }
            }
        }
    }
    count++;
}
view.get("#ajaxAction5").set("parameter",${request.getParameter("taskId")}).execute(
function(flag){
if(flag==true){
var total = arg.dataSet._data._keyMap;//数据汇总
for (var list in total){//循环总数据
    var tab=new dorado.widget.tab.ControlTab({caption:total[list]._data["fzbm"]+"行动计划"});
    var field=new dorado.widget.FieldSet({caption:"行动计划"})
    var autoform=new dorado.widget.AutoForm({id:'xdjh'+list,cols:'*',labelSeparator:':',labelWidth:150,readOnly:true});
    var a= new dorado.widget.autoform.AutoFormElement({label:'部门行动计划名称'});
    var b= new dorado.widget.autoform.AutoFormElement({label:'部门行动计划内容'});
    var c= new dorado.widget.autoform.AutoFormElement({label:'负责部门'});
    var d= new dorado.widget.autoform.AutoFormElement({label:'部门损失分配比例'});
    var e= new dorado.widget.autoform.AutoFormElement({label:'部门损失分配说明'});
    var f= new dorado.widget.autoform.AutoFormElement({label:'预计完成日期'});
    var g= new dorado.widget.autoform.AutoFormElement({label:'预计开始日期'});
        autoform.addElement(a);
        autoform.addElement(b);
        autoform.addElement(c);
        autoform.addElement(d);
        autoform.addElement(e);
        autoform.addElement(g);
        autoform.addElement(f);
        field.addChild(autoform);
        tab._control=field;
        //tab._control._actualVisible=true;
        view.get("#control1").addTab(tab,2,true);
        autoform._children[0].set("value",total[list]._data.xdjhmc);
        autoform._children[1].set("value",total[list]._data.xdjhnr);
        autoform._children[2].set("value",total[list]._data.fzbm);
        autoform._children[3].set("value",total[list]._data.bmssfpbl);
        autoform._children[4].set("value",total[list]._data.bmssfpsm);
        autoform._children[5].set("value",total[list]._data.yjksrq);
        autoform._children[6].set("value",total[list]._data.yjwcrq);
}
}
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值