新規投稿
フォローする

日付フィールドの入力制限について

お世話になっております。

日付フィールドへ入力をする際に今日を起点に3か月前までの日付しか

選択できないようにしたいと考えています。

下記のjsをつかってやろうと思っているのですが、

==="確定" のところを「今日より3か月前以降」とするには

どのように変更したらいいでしょうか?_

またほかに良い方法があればご教授いただければと思います。

 

よろしくお願いいたします。

 

(function () {
"use strict";
 
//ステータスが「承認済み」の場合は保存をさせない
functioncancelSave(event) {
 
// レコード情報を取得
varrecord=event['record'];
 
if (record['ステータス']['value'] ==="確定"){
event.error="完了データは編集できません。";
returnevent;
}
}
 
// 編集画面から保存時のイベント
kintone.events.on('app.record.edit.submit', cancelSave);
})();

 

0

1件のコメント

Avatar
ひよこ

青山昌司さん

こんにちは。ひよこです。

Moment.js を利用すると日付処理しやすいです。

Moment.js を使うには、CDNの指定が必要です。指定方法は以下の記事を参考にしてみてください。
https://developer.cybozu.io/hc/ja/articles/115000926746

今日より3ヶ月以上より前の日付と入力された日付を比較して、同じかそれより後だったらエラーとすれば良いと思います。

こんなイメージです。

var threeMonthAgo = moment().add(-3, 'months');
var inputDate = moment(record['日付']['value']);

if(inputDate.isSameOrAfter(threeMonthAgo.format('YYYY-MM-DD'),'day')){
event.error = "3ヶ月以前の日付を指定してください。";
return event;
}

 

0
ログインしてコメントを残してください。