> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 表单基础信息

> 本文档介绍了如何使用宜搭平台编辑表单，包括组件的基本设置、属性配置如标题、占位提示、描述信息等，并详细说明了组件状态管理及默认值设定方法。此外，还提供了关于字段校验规则的指导，例如必填项设置和自定义函数校验。

## 1. 简介

从表单的左侧选择组件拖动至中间表单设计界面，即可在右侧配置组件的基础设置，可以用于表单组件的个性化设置，例如修改表单的显示字段、布局表单格式、表单呈现的样式等。

**路径**：工作台 >> 宜搭 >> 我的应用 >> 表单 >> 右上角编辑表单即可进入 ，效果如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638947511402-b9c57030-68f5-414f-9f01-58f5238406a5.png)
</Frame>

编辑表单

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638947875501-bb1192a1-822d-4b6d-a03a-eb136791dabf.png)
</Frame>

表单编辑页面

## 2. 属性

**路径**：选择组件 >> 右边展示组件的属性及高级设置

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638947966931-b9894602-75c0-453d-988f-9fbcdeb2948b.png)
</Frame>

添加组件

### 2.1 标题

指该组件的名称，标题的默认名称为该组件的组件类型名称，标题用于帮助成员更好得识别需要填报的内容。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638948005533-dd9d2745-9fab-4adb-a5c5-cb689d592327.png)
</Frame>

修改组件标题

如果标题为空，那么标题会隐藏，如图只有一个输入框 ：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638948051152-ca12633b-697e-4dcc-95c6-e40cfa1cde26.png)
</Frame>

标题为空

### 2.2 占位提示

占位提示是描述该组件需要输入的内容的提示信息，该信息仅用于提示，不会影响字段的值。

如图「请输入学生姓名」：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638948097801-48e7ab88-74fa-4fc5-b8fe-e145ff92254c.png)
</Frame>

### 2.3 描述信息

描述信息是用于描述该组件的附加信息，常用于提示当前组件的功能、范围、填写注意事项等等，可使用文本、可插入链接。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/gif/1638948400944-f4ceac28-963c-4cd1-be02-e24d2215cdd5.gif)
</Frame>

### 2.4 状态

设置字段组件的默认状态，状态可通过权限控制。

如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638948276525-d20dc36e-e3cb-401d-8f04-a4d0175a50d7.png)
</Frame>

组件状态

* 普通： 可见、可编辑， 如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1612002055591-5863fd97-e791-48a1-bc94-65385e854745.png)
</Frame>

* 禁用： 可见、不可编辑，和只读的区别是会展示出字段属性，如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1612001948418-cf9afd2e-d0b0-4fb6-b907-b6b38e3eb8ee.png)
</Frame>

* 只读： 可见，不可编辑， 如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1612002014530-1491b448-1025-442a-88ff-0ddf3261ddef.png)
</Frame>

* 隐藏： 当前字段不可见、不可编辑

### 2.5 默认值

是指当用户访问表单时，该字段的默认值

对于部分组件可设置自定义、快捷配置、公式编辑、数据联动、关联其他表单数据、网关数据、搜索数据源等。

* 自定义 ：设定一个固定值，在访问的时候也是可以将固定值删除之后重新录入数据。

如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638948539102-ab430d1e-aca2-45ed-9686-7ab4643b27fc.png)
</Frame>

组件默认值

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638948635968-94928ff4-7594-4a33-a4f7-d6ed5d6f66a0.png)
</Frame>

* 高阶用法 ：将数据源的值，作为默认值写入

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638948693117-f5905c23-ea18-4c9f-a998-3d32d41e5113.png)
</Frame>

* 公式编辑

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638948744888-b96b7372-6cde-470d-a475-0ce5798e611a.png)
</Frame>

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638948956579-c1b452ad-396e-488f-add3-4a2482138eac.png)
</Frame>

配置默认值公式编辑

* 快捷配置 ：宜搭将一些高频配置场景，抽离为快捷配置，方便你进行配置。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1716170094131-217995b9-4a9e-46d3-9e44-a42299d605b9.png)
</Frame>

* 数据联动

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638949352599-440fc5a0-99d9-45ce-a8f6-00d211dcf7fb.png)
</Frame>

数据联动

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638949468777-08d8d095-118e-43da-8e2d-e299cc3db3dd.png)
</Frame>

* 关联其他表单数据

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638949562089-b8a2e70b-c715-4800-b272-893f2ba2fb3e.png)
</Frame>

关联其他表单数据

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638949654630-0e53b9be-6034-47f4-ab42-c58e7bc5c402.png)
</Frame>

* 网关数据

这个接口必须是外网支持调用，同时返回的接口格式为 \[\{"text":"111","value":"111"}]

* 搜索数据源

这个是在组件内输入值搜索的时候，才会触发这个接口的调用。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638954217176-b3def1ad-db4e-42fa-8666-817294752d56.png)
</Frame>

搜索数据源

### 2.6 校验

所有字段类型组件均可设置必填和自定义函数校验, 如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638954375903-b99ada85-536b-45fe-8386-90bb0401a990.png)
</Frame>

校验（必填、自定义函数）

#### 2.6.1 必填

必填是指在提交数据的时候必须填写该字段，若未填写无法成功提交数据，并且会提示：XX是必填字段。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645171289107-da787a9a-f9f9-4b29-a803-59b0739c2a1f.png)
</Frame>

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645171553284-67424814-06c2-4ae8-b25e-f539d978dac2.png)
</Frame>

必填项

#### 2.6.2 最小值

数据最小填写值，例如：数值组件最小值设置为 4，填写数据时输入的数值不能小于 4。

**支持组件类型：数值**

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645172269382-cc430d10-5eb0-4fb1-b18a-7dd1e2674e95.png)
</Frame>

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645172320295-176e3ee8-dbfd-48a7-879b-e4e4ebf3d5f4.png)
</Frame>

最小值

#### 2.6.3 最大值

数据最大填写值，例如：数值组件设置最大值为50，填写数据的时候数值不能大于50。

**支持组件类型：数值**

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645172436325-541ebedb-7f4a-434c-8f0a-2cf9817c35cf.png)
</Frame>

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645172411652-63e22a04-c82d-4209-8cae-62da0155deef.png)
</Frame>

最大值

#### 2.6.4 最小长度

数据最少填写数量，例如：单行文本设置最小长度为 2，提交数据的时候填写文字数量必须大于等于2个。

**支持组件类型：数值、单行文本、多行文本**。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645171825962-7a6fdad2-0764-4134-8bca-3238c7aaa9d0.png)
</Frame>

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645171844817-7380c1f7-05fa-496c-8a8b-82abc0854e46.png)
</Frame>

最小长度

#### 2.6.5 最大长度

数据最多填写数量，例如：下拉复选组件设置最大长度为 2，提交数据的时候该字段选择不能超过 2 个选项。

**支持组件类型：数值、单行文本、多行文本、复选、下拉复选、部门、关联表单。**

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645171975469-d7ffa288-ebf1-46ea-8064-b03c467d52ed.png)
</Frame>

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1645172004049-56b1321c-d830-4c89-8089-3cef2a5f2f07.png)
</Frame>

最大长度

#### 2.6.6 自定义函数（高级校验）

需要基础代码能力，不会代码也可以参考下述代码使用

**示例1**：校验输入的文字中，是否包含「雨」

**注**：自定义函数校验的错误提示为必填，不然可能无法使用

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638954761818-04442d21-c7d8-412b-a482-2eb52a0c790d.png)
</Frame>

配置自定义函数

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638954790519-642a77e1-8027-4381-8edd-7ca4e1caeac8.png)
</Frame>

可粘贴参考使用的 JS 代码信息：

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
// 是否包含“雨”
function validateRule(value) {
  if (value.indexOf('雨') > -1) {
    return true;
  }
  return false;
}
```

**示例 2**：校验输入的文字中，是否以「杭州」开头

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
// 是否以”杭州”开头
function validateRule(value) {
  if (/^杭州/.test(value)) {
    return true;
  }
  return false;
}
```

**其他例子：**

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
// 输入是否包含空格
function validateRule(value) {
  if(/s/.test(value)){
    return false;
  }
  return true;
}
```

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
//输入是否为银行卡号（简单通过位数验证)
function validateRule(value) {
  var regExp = /^([1-9]{1})(d{15}|d{18})$/;
  return regExp.test(value)
}
```

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
//输入是否为标准银行卡号(大陆银联银行卡号）
function validateRule(value) {
  value = (value + '').replace(/D+/g, '')
  const regExp = /^([1-9])(d{15}|d{18})$/
  // 校验非0开始及长度
  if (!regExp.test(value)) {
    return false
  }
  value = value.split('').reverse();
  let total = 0
  for (let i = 0; i < value.length; i++) {
    value[i] = parseInt(value[i]);
    total += i % 2 ? 2 * value[i] - (value[i] > 4 ? 9 : 0) : value[i];
  }
  if (total === 0) {
    return false;
  }
  return (total % 10) === 0;
 }
```

感谢用户[@n233333](https://www.yuque.com/n233333)提供的简易银行卡校验方案

#### 2.6.7 错误提示

当字段校验不通过的时候，会报错阻止提交

**注**：可不填，当不填时，会提醒「该字段是必填字段」如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638954870822-8bfb5c13-4bc7-4f6a-93fd-91daac06e4e2.png)
</Frame>

报错信息

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1634712090539-cb5a3e4f-9d32-4939-a933-84c343199d00.png)
</Frame>

## 3. 高级

### 3.1 唯一标识

当前字段的唯一识别码，用于在宜搭后台存储数据、通过代码控制时使用，类似每个组件的身份证 ，每个组件的唯一标识是不一样的，一般不需要更改，唯一标识的默认值为系统自动。

<Note>
  字段唯一标识（fiedId）是宜搭用来唯一指向该字段的标识，更改该标识会影响到该字段被使用的公式、数据存储（数据也可能会丢失）、JS 函数侧的指向等等，我们强烈「不建议」你去修改此标识！
</Note>

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638954917197-79ec8cd8-192e-4b8c-a6ff-b4c4ce7649ab.png)
</Frame>

组件唯一标识

### 3.2 多端显示

部分组件有这个选项，用于控制其在桌面端和移动端的显示。

**注**：如果配置了此选项，当使用代码获取当前控件的实例时会返回 null 。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638954955258-177b3ce6-a107-413e-854b-07e78b024f54.png)
</Frame>

多端显示

* 默认值：在桌面端和移动端同时显示该组件， 如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1612000026520-3d05d44e-cbef-4301-a14a-affd2cc59d99.png)
</Frame>

* 仅在桌面端显示该组件， 如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1611999990079-8eb86bdc-6ba8-4ae2-81f6-36b2e6bde915.png)
</Frame>

* 仅在移动端显示该组件， 如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1612000050531-a5551d2e-1b99-4a59-9961-bf1ebd97baf3.png)
</Frame>

### 3.3 数据提交

部分组件有该属性，用于数据提交时，当前组件的值是否提交来做控制。

* 仅显示时提交数据： 当组件隐藏时，默认是不会将数据提交到后台的。
* 始终提交： 无论组件显示与否，都提交当前字段数据。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638955051674-f2570792-9bf0-4b93-b235-0866687b062b.png)
</Frame>

数据提交

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638955100334-8de775ee-6dea-4954-a00c-ea79018ddb56.png)
</Frame>

### 3.4 动作设置

通过新建动作，我们可以在用户操作了当前字段组件时，做一些动作，比如当用户编辑完当前字段去编辑下一个字段之前，触发一次数据打点功能。如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638955335321-99325264-b3b9-4c5d-ba99-9fb641768e19.png)
</Frame>

动作设置--新建动作

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638955358670-3f33b01e-9956-4cf0-a73c-eda95b4fbb60.png)
</Frame>

**注**：新增动作并不会影响当前字段组件的原始动作，比如，当我们设置了组件必填，那么当前组件失去焦点时，我们一样会去做校验，也一样会触发当前动作设置中的函数。

具体可参考：[JS 动作面板 - 前端代码开放](/zh/yida/developer-features/ocmxyv)

### 3.5 删除和复制

**温馨提示：删除组件要特别小心，因为删除表单字段后可能会导致您的公式、业务关联规则等配置失效，需谨慎操作。**

**若您的应用正处于搭建中，还未正式上线，未产生任何数据，删除字段对您来说影响不大。**

**若您的应用已上线，并有数据产生，我们不建议您删除字段，删除字段可能会导致您配置的公式、业务关联规则失效，以及相关字段数据丢失。我们不建议你删除已经上线应用的字段，您可以将想要删除的字段设置为隐藏字段。设置隐藏字段的方法如下：**

**在表单编辑页面 >> 选择对应字段 >> 属性 >>**[**状态**](/zh/yida/form/snftao)

**删除/复制路径**：点击组件 >> 删除、复制即可，如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638955409949-98003a6d-32f5-409a-8a65-295fcac37ab7.png)
</Frame>

复制组件

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1638955535343-d29e6204-72df-4df2-a68e-97fbd6224565.png)
</Frame>

删除组件

### 3.6 编辑组件

**路径**：鼠标在表单编辑页面 >> 双击组件 >> 可编辑该组件名称，如图：

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/gif/1638955643259-95db629b-b320-40bc-86a3-7774d77ad053.gif)
</Frame>

编辑组件

### 3.7 拷贝 & 粘贴组件（跨页面适用）

<Warning>
  ⚠️ 建议在同类型页面中粘贴组件，不同类型页面组件粘贴后，可能会引起奇怪 bug 或者不可用，由于跨页面拷贝组件出现的问题，需要自行解决哈。
</Warning>

您可以将当前页面的组件，通过组合键 `Ctrl+C`  来复制以及通过 `Ctrl+V` 进行粘贴。（ `Mac`  系统为 `Command` 键）

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/gif/1638955690089-291f939a-cd00-4251-bd4b-3d14d4ffa816.gif)
</Frame>

## 4. 常见问题

<AccordionGroup>
  <Accordion id="q1" title="4.1 一个表单页面组件最多能有多少个？">
    页面组件过多会对页面性能及体验有一定影响，为保证使用体验，建议单个页面添加组件不要太多，免费版最多支持50个，其他版本最多支持300个，如需超过或更多组件建议根据业务拆分成多个表单页面。
  </Accordion>

  <Accordion id="q2" title="4.2 为什么设置组件必填未生效？">
    请检查组件状态是否设置为只读，若组件设置只读且勾选必填，则必填不会生效。

    <Frame>
      ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1650261877859-5200cfd4-6f86-4099-98cc-f0895c9c4cf1.png)
    </Frame>
  </Accordion>
</AccordionGroup>

## 5. 扩展阅读

[数据联动](/zh/yida/form/arpur0)

[关联其它表单数据](/zh/yida/form/tg64d5)

[关联选项设置](/zh/yida/form/pw4kp6)

[表单业务规则](/zh/yida/form/dssg6y)

[表单校验](/zh/yida/form/un1t9v)

[不可见字段赋值](https://www.yuque.com/go/doc/30443554)
