显示记录添加页面时设置初始值

aki发表于:2016年10月07日 17:05:57更新于:2022年07月27日 10:38:57

开发者中心包含此范例模板(自动设置当天日期),请前往开发者中心下载学习。


我的部门是使用kintone的【周报】应用进行汇报、共享和联系工作的。

有些项目跨的期间比较长,超过一周,因此我们通常 重复利用 上一周的周报,然后把项目有变动的地方更新一下。但是很容易忘记 把汇报日改为今天 。重复利用记录的时候,当然希望日期也会自己变的吧。

本次,就向大家介绍在添加记录的时候,如何让汇报日自动设为今天。

上周的周报

比如上周的周报的汇报日为10/7。
接下来要做的是:点击红框中的重复利用按钮时,让汇报日自动设为今天。

00157f769b5128fbdb1364a9c464bc2

JavaScript的程序

使用的事件是记录添加页面显示时的事件【app.record.create.show】。

  • 所需要的处理是给record对象中的汇报日字段的值设置日期,然后return event就OK了。

kintone.events.on('app.record.create.show', function(event) {
    var record = event.record;
    var dt = new Date();
    var today = dt.getFullYear() + "-" + zeroformat((dt.getMonth() + 1), 2) + "-" + zeroformat(dt.getDate(), 2);
    record['汇报日']['value'] = today;
    return event;
});

因为要用到zeroformat 这个用于创建0的函数,下面简单说明一下。
下面是将Date类型的getMonth、getDate 转换成 X位。

function zeroformat(v, n) {
    var vl = String(v).length;
    if (n > vl) {
        return (new Array((n - vl) + 1).join(0)) + v;
    } else {
        return v;
    }
}

本周的周报(记录添加页面显示时)

汇报日变为今天(10/14)。

 00157f769fac158d9c3a70b2bf6ffe4

然后,编辑周报点击【保存】就可以了。
【汇报日】使用的是标准功能中的日期字段,因此可以更改日期。

 

该Tips在2014年4月版本中确认过。