JavaScriptで日時を簡単に扱えるツールとしてMoment.jsが知られていますが、合わせてMoment Timezoneを使うとタイムゾーンの操作も簡単にできます。 どちらもCybozu CDNにてサポートされているので手軽に利用できます。
サンプル
入力した2つの場所を比較して、一方の現地日時から他方の現地日時を自動計算します。
デモ
コード
(function() { "use strict"; kintone.events.on([ 'app.record.create.show','app.record.edit.show' ], function(event){ event.record.日時_支社2.disabled = true; return event; }); kintone.events.on([ 'app.record.create.change.場所_支社1','app.record.edit.change.場所_支社1', 'app.record.create.change.日時_支社1','app.record.edit.change.日時_支社1', 'app.record.create.change.場所_支社2','app.record.edit.change.場所_支社2' ], function(event){ var datetime; if(!event.record.場所_支社1.value || !event.record.日時_支社1.value || !event.record.場所_支社2.value) return; // 日時_支社1の値を支社1のタイムゾーンでの日時であると認識した上で取得 datetime = moment.tz(moment(event.record.日時_支社1.value).format('YYYY-MM-DDTHH:mm:ss'), event.record.場所_支社1.value); // 取得した日時を支社2のタイムゾーンで表示 event.record.日時_支社2.value = datetime.tz(event.record.場所_支社2.value).format('YYYY-MM-DDTHH:mm:ss'); return event; }); })();
※本サンプルでは、ルックアップ機能を用いて別アプリからタイムゾーン名(Asia/Tokyoなど)を取得しています。
0件のコメント