# CAP4表单前端接口 - 移动端
CAP4移动端表单前端接口文档
CAP4移动端表单前端接口文档适用于M3(app)、微协同等
# 1. 表单事件
# 1.1. cap_form_afterFormRender
在表单首次渲染完成时触发(只触发一次)
用法示例:
document.addEventListener('cap_form_afterFormRender', function(evt) {
console.log(evt)
});
事件参数:
表单首次渲染完成
# 1.2. cap_form_afterFormUpdate
在表单任何内容(包括主表字段/明细表字段/明细行)变化导致表单渲染更新时均会触发
用法示例:
document.addEventListener('cap_form_afterFormUpdate', function(evt) {
console.log(evt)
});
事件参数:
无
# 2. 表单API
# 2.1. XForm.getData()
获取整个表单数据
接口参数:
无
用法示例:
XForm.getData()
返回结果:
{
metadata: Object, // metadata中含有表单id,权限id等信息
formmains: Object, // 主表数据
formsons: Object // 明细表数据
}
获取整个表单数据
# 2.2. XForm.getField(fieldName[,tableName, recordId])
获取某个字段(控件)信息
接口参数:
参数名 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
fieldName | String | 必须 | 字段名 |
tableName | String | 可选 | 明细表名 |
recordId | String | 可选 | 明细行记录id |
用法示例:
XForm.getField(fieldName) // 获取主表字段
XForm.getField(fieldName,tableName, recordId) // 获取明细行字段
返回结果:
{
metadata: Object, // metadata中含有表单id,权限id等信息
formmains: Object, // 主表数据
formsons: Object // 明细表数据
}
获取某个字段(控件)信息
# 2.3. XForm.setField(fieldName, data[,tableName, recordId])
更新某个字段(控件)信息
接口参数:
参数名 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
fieldName | String | 必须 | 字段名 |
data | Object | 必须 | 更新的数据 |
tableName | String | 可选 | 明细表名 |
recordId | String | 可选 | 明细行记录id |
用法示例:
data = {
display: '新的控件标题',
showValue: '新的控件显示值'
}
XForm.setField(fieldName, data) // 更新主表字段
XForm.setField(fieldName,data, tableName, recordId) // 更新明细行字段
返回结果:
true // 更新成功
false // 更新失败
# 2.4. XForm.allowedProps
列出字段(控件)支持更新的属性列表
# 3. 注意事项
- 目前仅提供部分表单事件,后续根据实际反馈开放
- cap2的事件名为sui_form_afterFormRender
- XForm是CAP4移动端暴露在全局的变量
- 目前只支持XForm.allowedProps列表内属性被更新
- 未列出内容,待后续更新补充
End
创建人:yinyanting