简体中文
setReadOnly
约 299 字大约 1 分钟
2025-09-22
动态设置某个对象字段为只读或非只读状态。
参数
param 属性说明
| 属性 | 说明 | 类型 | 默认值 | 可选值 |
|---|---|---|---|---|
| objApiName | 对象apiName | String | — | — |
| dataIndex | 1条或多条从对象数据dataIndex | String|Array | — | — |
| fieldName | 1个或多个字段apiName | String|Array | — | — |
| status | 是否更新为只读状态 | Boolean | true | true:只读 false:非只读 |
| priority | 优先级,数值越大优先级越高,大于10时将覆盖布局状态 | Number | 0 | — |
返回结果
无
代码示例
{
event: "form.render.end",
functional: function (pluginExecResult, options) {
console.log("custom plugin: form.render.end exec");
let {dataUpdater}=options;
//设置主对象一个字段只读
dataUpdater.setReadOnly({
fieldName: 'field_xx__c'
})
//设置主对象多个字段只读
dataUpdater.setReadOnly({
fieldName: ['field_xx1__c', 'field_xx2__c']
})
//设置主对象某些字段不只读
dataUpdater.setReadOnly({
fieldName: ['field_xx__c'],
status: false
})
//设置指定从对象的所有数据的某些字段只读
dataUpdater.setReadOnly({
objApiName: 'SalesOrderProductObj',
dataIndex: 'all',
fieldName: ['field_xx__c'],
})
//设置指定从对象指定行的数据的某些字段只读
dataUpdater.setReadOnly({
objApiName: 'SalesOrderProductObj',
dataIndex: ['1', '2'],
fieldName: ['field_xx__c']
})
}
},注意
- 默认规则:布局必填字段不可设置为只读,布局只读字段不可设置为非只读。如需跳过该规则,在
form.render.before事件中配置isSkipLayoutFieldStateCheck为true。
