4000-271-266
免费试用

自定义页面提交表单子表单数据

1. 案例背景

在特定的场景下我们需要使用自定义页面的子表单组件填写数据后提交数据到表单的子表单组件进行数据存储。

2. 实现效果

? 实现自定义页面提交表单子表单数据

3. 实现步骤

3.1 创建自定义页面

路径:进入已创建好的应用 >> 页面左上角+号 >> 新建自定义页面

创建自定义页面

3.1.1 自定义页面组件配置

自定义页面组件配置

3.2 创建表单页面

路径:进入已创建好的应用 >> 页面左上角+号 >> 新建普通表单

创建表单页面

3.2.1 表单页面组件配置

表单组件配置

3.3 自定页面数据源及 JS 面板配置

3.3.1 数据源配置

名称:dp2

自动加载:关闭

请求地址:/dingtalk/web/应用编码/v1/form/saveFormData.json

请求方式:POST

自定页面数据源配置

3.3.2 创建按钮点击动作

创建按钮点击动作

创建按钮点击动作

3.3.3 JS 面板配置

JS 面板配置

代码示例:

注意:需要替换对应唯一标识

  const a = this.$("明细组件唯一标识").getValue()
  console.log(a);
  
  let n=[];
  for(let i=0;i<a.length;i++)
  {
    n.push({
      表单页面单行文本1:a[i].输入框1,
      表单页面单行文本2:a[i].输入框2})
  }
  console.log(n);
  var judge = false;
  n.map(dd => {
    judge = (dd.表单页面单行文本1 != '' || dd.表单页面单行文本2 != '') ? true : false;
  })
  if (judge == true){
    const b = { 表单页面子表单组件唯一标识: n }
    const params = {
      formUuid: "表单页面表单id",
      appType: "应用编码",
      formDataJson: JSON.stringify(b)
    }
    this.dataSourceMap.dp2.load(params).then((response) => {
      this.utils.dialog({
        method: 'alert', // 或confirm
        title: '添加数据成功',
        onOk: () => { location.reload() }
      })
    })
  }else{
    this.utils.dialog({
      method: 'alert', // 或confirm
      title: '数据不允许为空',
      onOk: () => { location.reload() }
    })
  }

4.效果演示


江苏无雀数据科技有限公司 www.wuquedata.com 版权所有
服务热线4000-271-266
ICP备案编号:苏ICP备2022045370号

一对一专业企业顾问

工作时间:9:00-18:00 在线服务

实时解答疑难问题

工作时间:9:00-18:00 在线服务

4000-271-266

工作时间:9:00-18:00 在线服务

售后咨询 电话联系 售前咨询