表格编辑器的可编程 API 说明 (适用于组件版本 0.1.8+)

InputObject 输入域对象

介绍

每个输入域都可以设置事件处理器,让开发者捕获事件,实现相关的高级效果。

【事件处理器函数】

  1. /**
  2. * @param inputObject {Object} 输入域对象本身
  3. * @param zContext {Object} 即 Enhancer.ZContext 对象实例,包含当前表单依赖的变量数据。
  4. */
  5. function(inputObject, zContext) {
  6. //TODO: 处理一些事情
  7. }

API

setValue(val) 给输入域赋值。
  • @param val {Object} 符合输入域承载显示的值。
getValue() 获取输入域的值。
  • @return {Object} 输入域的值。
getTypedValue() 获取经指定数据类型转换后的值。
  • @return {Object} 输入域经您指定的数据类型转换后的值。
enable() 启用。
disable() 禁用。
show() 显示。
hide() 隐藏。
affected(zContext) 影响。可以重新按照当前上下文变量刷新数据。
readonly(readonly) 设置只读或恢复可写。
  • @param readonly {Boolean} 是否只读。
focus() 聚焦。
check() 触发校验,按照您配置的校验规则进行检验并做相关提示。
showTips(text, status) 显示提示。
  • @param text {String} 提示内容
  • @param status {String} 提示状态,取值可以是:error, highlight, active, default, hover。
closeTips() 关闭提示。
clear() 清除内容。
getRow() 获取所属表单对象。

Row 行对象

API

getInput(name) 获取输入域对象。
  • @param name {String} 输入域列名。
  • @return inpObject {InputObject} 输入域对象。
disable() 禁用。
affected(zContext) 影响。可以重新按照当前上下文变量刷新数据。
getLastEventInput() 获取最后事件触发的输入域对象。
getId() 获取行 ID。
  • @return {String} 行ID 也是对应的 HTML DOM ID

窗口外部获取组件对象方法

  1. var win = Enhancer.getEntityByNumber(窗口编号);
  2. var gridEditor = win.getWidget();
  3. // 获得第三行对象
  4. var row = gridEditor.getRow(2);
  5. // 获得全部行对象
  6. var rows = gridEditor.getRows();

自定义校验函数

在输入域设置校验规则中,可以指定自定义校验函数:

  1. /**
  2. * @param value {Object} 当前输入域的值。
  3. * @param context {Object} 当前行全部输入域的键-值对象,通过 context[大写输入域名] 可取得对应值。
  4. * @param inputObject {InputObject} 当前输入域对象。
  5. **/
  6. function(value, context, inputObject) {
  7. if (合法) {
  8. return true
  9. }
  10. return '不合法原因'
  11. }