根据不同的回答切换组合的开闭

aki发表于:2017年03月08日 12:54:58更新于:2022年07月27日 10:38:32

开发者中心包含此范例模板(切换组合的开关),请前往开发者中心下载学习。

Index

概要

本次介绍使用2016年2月发布的“组合开闭API”来进行JavaScript自定义。

使用这个API的话,可以实现根据不同的回答自动开闭组合。
有分支的输入项,使用这个功能特别便利。

这次介绍的是用于收集产品建议的应用中,根据单选框的选择结果来控制组合关闭的自定义。

完成图

根据“种类”里的单选框的选择,打开或关闭组合。

 00158e7302d249117494efd6730bc47

实际动作如下。

00158e730482f49fa9b701924638a34

准备应用

首先准备应用。我准备的是【商品评价应用】。

字段设置如下

必要的字段设置如下。其他字段请参考完成图和下面的图随意设置。

字段名称字段代码字段类型
选择缺陷时group_failure组合字段
选择建议时group_demand组合字段
选择提问时group_question组合字段
选择其他时group_other组合字段
种类单选框单选框

各个组合内,请结合上面的完成图和下图随意添加字段。

00158e73a26c9841d151d2595f50fcb

程序范例

注意事项

  • 本范例程序,不保证运行绝对正确。

  • 另外不对本范例程序提供技术上的支持。

程序(JavaScript)

首先,使用“组合字段开闭API(kintone.app.record.setGroupFieldOpen)”将所有组合关闭。
之后,再根据单选按钮的值自动切换关闭。

/*
 * 根据回答内容自动切换组合开闭的程序范例
 * 
 * Licensed under the MIT License
 */
 
(function() {
    "use strict";
    //根据单选按钮的值自动切换组合开闭的操作
    var eventsSubmit = ['app.record.detail.show',
                        'app.record.create.show',
                        'app.record.edit.show',
                        'app.record.create.change.单选框',
                        'app.record.edit.change.单选框'];
    kintone.events.on(eventsSubmit, function(e) {
        var record = e.record;
        var radioButtonValue = record.单选框.value;
        //使用组合字段开闭API先关闭所有的组合
        kintone.app.record.setGroupFieldOpen('group_failure', false);
        kintone.app.record.setGroupFieldOpen('group_demand', false);
        kintone.app.record.setGroupFieldOpen('group_question', false);
        kintone.app.record.setGroupFieldOpen('group_other', false);
        //根据单选框的值切换组合字段的开闭
        switch (radioButtonValue) {
            case "缺陷":
                kintone.app.record.setGroupFieldOpen('group_failure', true);
                break;
            case "建议":
                kintone.app.record.setGroupFieldOpen('group_demand', true);
                break;
            case "提问":
                kintone.app.record.setGroupFieldOpen('group_question', true);
                break;
            case "其他":
                kintone.app.record.setGroupFieldOpen('group_other', true);
                break;
        }
    });
})();

使用的API

  1. 添加事件句柄

  2. 记录详情页面显示时的事件

  3. 显示记录添加页面时的事件

  4. 记录编辑页面显示时的事件

  5. 记录添加页面的字段值发生更改时的事件

  6. 在记录编辑页面更改字段值时的事件

  7. 组合字段的开闭API

最后

您是否还想到其他更加巧妙的用法呢?
这次关于根据单选框的选择自动切换组合开闭的方法就介绍到这里。其他还有根据流程管理的状态自动切换关闭等用法。
如果有任何不清楚的地方,欢迎到社区里交流!