模型驱动应用中窗体和网格中的事件

事件启动所有客户端代码。 在模型驱动应用中,将 JavaScript 库(脚本 Web 资源)中的特定函数关联在事件发生时要执行。 此函数称为 事件处理程序。 每个事件处理程序指定 JavaScript 库中的单个函数以及可传递给函数的任何参数。

可以使用 UI 将事件处理程序关联到某些事件。 对于无法通过 UI 关联的事件,客户端 API 提供了可用于将事件处理程序附加到此类事件的方法。

使用 UI 向事件添加或删除事件处理程序函数

使用“窗体属性”对话框的“事件处理程序”部分将脚本与窗体和列的事件相关联。

窗体属性中的事件处理程序部分。

批量编辑表单

默认情况下,当窗体处于批量编辑模式时,不会调用事件处理程序。

若要在批量编辑模式下启用事件处理程序,请通过查找相关 event 元素并创建/设置属性 BehaviorInBulkEditForm 来 Enabled修改 Form XML。 目前,仅 OnLoad 事件支持此作。

有关表单 XML 自定义的详细信息,请参阅 何时编辑自定义项文件、 自定义窗体和 窗体 XML 架构。

若要确定何时在批量编辑模式下对窗体调用事件处理程序,请使用 getFormType 方法。

使用代码向事件添加或删除事件处理程序函数

使用以下方法为无法通过 UI 关联的事件添加和删除事件处理程序:

事件 事件处理程序
Attribute OnChange addOnChange 和 removeOnChange 方法
Form OnLoad formContext.ui addOnLoad 和 removeOnLoad 方法
已加载窗体 formContext.ui addLoaded 和 removeLoaded 方法
表单数据 OnLoad formContext.data addOnLoad 和 removeOnLoad 方法
窗体 OnSave addOnSave 和 removeOnSave 方法
查找控件 PreSearch addPreSearch 和 removePreSearch 方法
kbsearch 控件 OnResultOpened addOnResultOpened 和 removeOnResultOpened 方法
kbsearch 控件 OnSelection addOnSelection 和 removeOnSelection 方法
kbsearch 控件 PostSearch addOnPostSearch 和 removeOnPostSearch 方法

重要

执行上下文自动作为第一个参数传递给使用代码设置的函数。 详细信息: 客户端 API 执行上下文

表单事件管道

最多可为每个事件定义 50 个事件处理程序。 每个事件处理程序按窗体属性对话框的“事件”选项卡中的“事件处理程序”部分显示的顺序执行。

使用 setSharedVariable 和 getSharedVariable 方法在事件处理程序(函数)之间传递公共变量。 使用执行上下文 getDepth 方法了解相对于其他事件处理程序执行的事件处理程序的顺序。

了解客户端 API 对象模型
客户端 API 执行上下文
事件(客户端 API 参考)