-
1505121235 数据老手Lv5
发表于2020-5-22 16:20
楼主
本帖最后由 1505121235 于 2020-9-2 10:00 编辑
1使用说明
1.1 功能入口
1.2 属性设置
1.3 钻取和相关接口方法
1.3.1 钻取
1.3.2 接口
1.2 应用举例
复制代码
新增按钮的钻取
复制代码
保存按钮的钻取复制代码
删除按钮的钻取复制代码
重置复制代码
1使用说明
1.1 功能入口
在基础组件中,将组件拖入右侧编辑页面
*1 主题表:选择组件对应的主题表 (必填)
*2 父节点id字段 :选择父节点id字段(必填)
*3 节点id字段 : 选择节点id字段(必填)
4 节点名称字段 :选择节点在树上显示的名称字段,不设置则默认显示id
5 根节点: 指定根节点,支持传空
6 展开方式:目前支持四种,详细可以查看属性的悬浮提示
10 显示搜索框(搜索框逻辑是从当前选中节点的下一个第一个可见节点开始搜索)
设置好属性以后,点击计算,结果如下图所示。
1.3.1 钻取
钻取是针对每一个树节点的onclick事件进行设置的,
在钻取参数中,将树组件的参数名称中@换成$ 可以将被选中的树节点的id值作为参数值进行传递
方法名 | 参数说明 | 方法说明 | |
getSelectItem(name) | name: 对应树组件的代号 | 获取指定树组件被选中节点 | |
getSelectItemId(name) | name: 对应树组件的代号 | 获取指定树组件被选中节点的id(如果没有选中的节点会给出提示) | |
refreshTree(name, expandtype) | name:对应树组件的代号, expandtype:展开方式 默认1:"def1" 默认2:"def2" 全展开:"allopen" 全收起:"allclose" | 重新加载树组件上的所有节点,并根据展开方式进行展开,不传默认使用组件设置的展开方式 | |
refreshChildrenNode(name,itemtxt, refreshalltree) | name: 对应树组件的代号, itemtxt : 刷新后定位到的节点名称(只能是选中节点和其子节点) refreshalltree:是否刷新整树 (true 刷新整树) | 重新加载树组件上选中节点的父节点的子节点,如果没有选中的节点则刷新整树。 设置itemtxt,传入回填组件的值 ,新增时可以定位到新增的节点,修改时定位到修改的节点, 不设置itemtxt 都定位的是选中的节点 | |
deleteTreeItemByType(name, typefield, type, afterDeleteSelectParentItem) | name: 对应树组件的代号, typefield : 标识字段 type : 标识字段对应的值 afterDeleteSelectParentItem: 在删除以后是否选择父节点 | 树组件还未做过滤条件 ,因此需要一个字段 作为标记字段,对其进行操作控制数据的展示和隐藏,同时需要同步创建一张根据标记字段作为过滤条件的视图 |
1.2 应用举例
树组件的钻取
- _zcalcn([['Widget1','HHH15','@p=$p;@a=']]);
- //热区式钻取, 参数@p=$p @p是钻取后使用的参数名 $p 是树组件上的参数名 用$将@替换,在钻取时会将选中节点的id传入
新增按钮的钻取
- var id = getSelectItemId("HHH5");
- id= EUI.isStrEmpty(id) ? "" : id;
- _zcalcn([['Widget1','HHH15','@p='+id+';@a=add']]);
- //获取到选中节点的id 在新增时 将该节点作为 新节点的父节点
保存按钮的钻取
- g_rptpage.cmd_saveReportData("",function(){
- var value =g_formmgr.rpts.HHH15.childs.HHH40.getValue();
- refreshChildrenNode("HHH5", value , true );
- });
- //先使用表单保存的接口,在回调中是调用刷新接口,
- g_formmgr.rpts.HHH15.childs.HHH40.getValue();
- var rpts = g_formmgr.rpts;//结果态表单对象
- var container = rpts.HHH15//对象里的表单容器
- var input = container.childs.HHH40; //容器子组件里的 回填组件
删除按钮的钻取
- deleteTreeItemByType("HHH5", "content", "1");
- refreshChildrenNode("HHH5","", true);
- _zcalcn([['Widget1','HHH15','@p=;@a=']]);
- //使用删除接口将 标记字段的值设置为失效 然后刷新节点,并重置回填组件的值
重置
- var id = getSelectItemId("HHH5");
- id= EUI.isStrEmpty(id) ? "" : id;
- _zcalcn([['Widget1','HHH15','@p=' + id+';@a=change']]);
- //重置回填组件中的值,第一次点击左树节点时的值,如果想重置为空,不传参即可