如果问题得到了解决,辛苦点下采纳回答哦~
2024年05月
2024年04月
2024年03月
2024年02月
2024年01月
参考下图,设置复选组件最大可选数量:
不建议一次性请求过多数据,可以采用分页的形式来获取数据。如果你想统计数据的总量可以使用接口返回的 totalCount 字段,它记录符合条件数据的总条数。
你所提到的在表头处直接筛选过滤这个功能目前无法实现。你可以使用查询组件来配合表格数据的筛选
如果没有这样的配置按钮
你可以选中组件,然后在“高级”中选择是否渲染;也可以给它绑定变量,变量值为 true 则渲染,为 false 则不渲染。
可以参考下面的步骤来实现:
1.页面
2.给按钮绑定事件
export function onClick() {
const formDataOne = this.$('子表单1组件唯一标识').getValue();
const formDataTwo = this.$('子表单2组件唯一标识').getValue();
const tempDataOne = formDataOne.map(item => {
return {
子表单3单行文本组件唯一标识: item.子表单1单行文本组件唯一标识,
子表单3数值组件唯一标识: item.子表单1数值组件唯一标识
};
});
const tempDataTwo = formDataTwo.map(item => {
return {
子表单3单行文本组件唯一标识: item.子表单2单行文本组件唯一标识,
子表单3数值组件唯一标识: item.子表单2数值组件唯一标识
};
});
// 可筛选符合条件的数据后再赋值给子表单3
const newData = tempDataOne.concat(tempDataTwo);
this.$('子表单3组件唯一标识').setValue(newData);
}
3.最终效果
多选题计算得分可以参考此案例:表单中多选题计算得分
单选题和多选题在一起计算总分可以参考下面步骤:
1.单选组件配置
2.给单选组件添加Onchange事件并绑定函数
// answer:当前选择的答案,rightAnswer:正确的答案,total:题目总分
export function getSingleScore(answer = '', rightAnswer = '', total = 0) {
if (answer && answer === rightAnswer) return total;
return 0;
}
export function onChange3({ value }) {
this.$('得分数值组件唯一标识').setValue(this.getSingleScore(value, "B", 5));
}
3.给总分数值组件配置公式编辑
最终效果:
可能是权限设置问题。按照此路径:数据管理页 -> 页面设置 -> 权限设置,检查下是否勾选相关功能
注:管理员不受权限影响
在示例给复选框绑定的 onChange 事件中就有:
把子表的过滤空行打开试试
没能复现你的问题,我是按照你的描述来写了例子,结果是正常的。具体如下:
若无法直接配置,你可以在样式里添加下面的 CSS 来实现:
:root .next-icon.next-medium:before{
color:#FF0000;
}
CSS 合法颜色值:https://www.w3school.com.cn/cssref/css_colors_legal.asp
可以给包裹按钮组件的容器设置如下样式来实现:
:root {
opacity: 0;
}
:root:hover{
opacity: 1;
}
CSS opacity 属性参考文档:https://www.w3school.com.cn/cssref/pr_opacity.asp
“统计宜搭里面的图片上传组件上传了多少张图片”可以参考下这个问题的回答:/ask/613323?spm=a2c6h.12873581.technical-group.dAsk613323.74302bc5h5XuiU
这两个问题同理:
给图片上传组件绑定可能会引起上传数量变化的事件,然后处理数据给数值组件赋值即可。
给复选框绑定 onChange 动作,然后设置数值组件的值即可。
export function onChange({value}) {
this.$('数值组件唯一标识').setValue(value.length);
}
获取组件唯一标识方法如下图:
效果:
在编辑页面状态 >> 页面发布 >> 公开发布
可以使用代码来实现,具体可参考以下步骤:
// 辅助函数,获取子表单的数据条数并赋值给数值组件
export function getAndSetData(){
const num = this.$('子表单组件唯一标识').getValue().length;
this.$('用于统计子表单数据条数的数值组件唯一标识').setValue(num);
}
export function onAddClick(newGroupId) {
this.getAndSetData();
}
3.在 JS 面板 didMount 函数中编写如下代码
this.getAndSetData();
4.效果
可以参考下面的步骤来实现:
`/${window.pageConfig.appType || window.g_config.appKey}/v1/form/searchFormDatas.json`
可以参考以下实现:
export function onChange({ value }) {
if (value === "否") {
// 关闭校验
this.$('需要校验组件的唯一标识').disableValid();
} else {
// 开启校验
this.$('需要校验组件的唯一标识').enableValid();
}
}
报表可以使用对应的公式来实现: