new Form(viewGroup)
表单处理工具类;可快速将容器中的表单组件的名称和值组装为 JSON 数据,也支持通过修改 JSON 将值反填回组件中;
此工具还支持 JSON 整体变化事件和 JSON 中单条数据变化事件
Parameters:
Name | Type | Description |
---|---|---|
viewGroup |
ht.ui.ViewGroup |
Methods
-
addChangeListener(listener, scope, ahead) → {void}
-
增加数据变化监听器
Parameters:
Name Type Attributes Description listener
Object 监听器函数
scope
any <optional>
监听器函数域
ahead
boolean <optional>
是否将当前监听器插入到监听器列表开头
Returns:
void -
getFormDataNames() → {Array.<string>}
-
获取所有的表单组件名称
Returns:
Array.<string> -
getFormView(name) → {ht.ui.View|Array.<ht.ui.View>}
-
根据名称获取对应的表单组件
Parameters:
Name Type Description name
string 表单组件的 formDataName
-
getFormViewMap() → {any}
-
获取 表单组件名称-表单组件 映射表
Returns:
any -组件
-
getItem(name) → {any}
-
根据表单组件的名称获取对应的数据值
Parameters:
Name Type Description name
string 表单组件的 formDataName
Returns:
any -值
-
getJSON() → {any}
-
获取由表单组件的名称和值组装成的 JSON 数据
Returns:
any -JSON 对象
-
getViewGroup() → {ht.ui.ViewGroup}
-
获取容器对象
-
isFormDataNameWarnDisabled() → {boolean}
-
获取是否禁用了 formDataName 重复检测
Returns:
boolean -是否禁用
-
removeChangeListener(listener, scope) → {void}
-
删除数据变化监听器
Parameters:
Name Type Attributes Description listener
Object 监听器函数
scope
any <optional>
监听器函数域
Returns:
void -
setFormDataNameWarnDisabled(disabled) → {void}
-
设置是否禁用 formDataName 重复检测,默认为 flase;
除 ToggleButton、CheckBox、RadioButton 之外其它组件的 formDataName 属性如果重复,浏览器会在控制台打印警告,
如果要关闭警告,请调用此 API 并将参数设为 trueParameters:
Name Type Description disabled
boolean 是否禁用
Returns:
void -
setItem(name, value) → {void}
-
设置 JSON 数据中表单组件的名称对应的值,这会同步修改组件的值
Parameters:
Name Type Description name
string 表单组件的 formDataName
value
any 值
Returns:
void -
setJSON(json) → {void}
-
设置 JSON 数据,同步更新容器中的表单组件
Parameters:
Name Type Description json
any JSON 对象
Returns:
void -
setViewGroup(viewGroup) → {void}
-
设置容器对象;递归遍历此容器对象并获取表单组件,为表单组件增加属性变化监听器以及时更新 JSON
Parameters:
Name Type Description viewGroup
ht.ui.ViewGroup 容器对象
Returns:
void