Index
事件处理的概要
在kintone上发生的各种各样的事件可通过绑定句柄来执行。
添加事件句柄
可在PC专用版和移动端专用版中使用。
可在所有页面(包括应用和空间)中使用。※但是,粘贴到空间正文里的应用不能用。
函数
kintone.events.on(type, handler)
属性
参数名 | 要指定的值 | 必须 | 説明 |
---|---|---|---|
type | 字符串或字符串的数组 | 必须 | 指定要绑定句柄的对象的事件类型或事件类型的数组。 |
handler | 函数 | 必须 | 事件发生时要执行的句柄。type属性中包含事件类别,这在所有event中共通。 如在下面的事件的句柄内返回kintone.Promise对象※,将等待异步处理执行完后才开始执行之后的处理。 Promise对应事件 除字段值更改事件外,所有事件均支持Promise。 ※kintone.Promise对象是带有then方法。 |
返回值
无。
程序范例
//执行事件句柄 var handler = function(event) { console.log(event); }; kintone.events.on('app.record.index.show', handler);
删除事件句柄
可在PC专用版和移动端专用版中使用。
可在所有页面(包括应用和空间)中使用。※但是,粘贴到空间正文里的应用不能用。
函数
kintone.events.off(type, handler)
属性
参数名 | 要指定的值 | 必须 | 説明 |
---|---|---|---|
type | 字符串或字符串的数组 | 可选 | 指定要删除的事件句柄的事件类型、或事件类型的数组。 |
handler | 函数 | 可选 | 要删除的事件句柄。指定与添加事件时相同的对象。
|
返回值
true:至少有一个删除成功时
false:没有找到任何要删除的事件句柄时
程序范例
var handler = function (event) { console.log(event); }; kintone.events.on('app.record.index.show', handler); // 从指定的事件类型中删除指定的句柄 kintone.events.off('app.record.index.show', handler); // 从指定的事件类型中删除所有的句柄 kintone.events.off('app.record.index.show'); // 从所有的事件类型中删除所有的句柄 kintone.events.off();
注意事项
截至2017年5月,应用的JavaScript文件将按以下顺序运行。
同一个应用中,应用的JavaScript文件和插件的JavaScript文件同时存在时
1. 应用程序的JavaScript文件
2. 插件的JavaScript文件
事件句柄只会被添加,不会被覆盖(这个是整个JavaScript的规格,使用kintone JavaScript API的时候也一样。)。
如需要覆盖,要先删除已经设置过的事件句柄,然后再添加新的事件。如果同一个应用中有多个同名的类别,那么在以下“触发的事件”中返回包含属性“类别”的对象时可能会返回不符预期的类别。
这种情况下,请先删除属性“类别”,再返回。记录列表页面
・app.record.index.edit.submit
・app.record.index.edit.change.<fieldCode>记录添加页面
・app.record.create.show
・app.record.create.submit
・app.record.create.change.<fieldCode>
・mobile.app.record.create.show
・mobile.app.record.create.submit
・mobile.app.record.create.change.<fieldCode>记录编辑页面
・app.record.edit.show
・app.record.edit.submit
・app.record.edit.change.<fieldCode>
・mobile.app.record.edit.show
・mobile.app.record.edit.submit
・mobile.app.record.edit.change.<fieldCode>记录详情页面
・app.record.detail.process.proceed