お世話になります。
曜日条件でアラートを設定したいのですが
下記をどう書き換えれば良いか教えて頂けますか?
| dates.forEach(function(date) { |
| | // 年月日から日を取得 |
| | day = date.substr(8, 2); |
| | |
| | if (day === ‘02’) { |
| | templateHtml = ‘<div class=“alertDefault alert01” title={{>text}}><b>{{>text}}</b></div>’; |
| | template = $.templates(templateHtml); |
| | data = {text: ’ 勤怠締切日です’}; |
| | |
| | // スケジュールの予定枠最上部の空白要素を取得 |
| | space = garoon.schedule.calendar.getDayFirstSpaceElement(‘GROUP_WEEK’, date); |
| | |
| | // 空白要素へhtmlをセット |
| | $(space).html(template(data)); |
| | |
| | return; |
n さん
はじめまして。ひよこです。
これはなにか元ネタがあるのでしょうか?
アラートといえば window.alert() だと思っているのですが、これは違うので気になりました…。
ちなみに、dates.forEach(function(date) { の中身で、以下のような流れでやればよいかと思います。
date が文字列っぽいので、Date 型に変換する
書式がわからないので、「javascript 文字列 date 変換」などでググってみてください。
で変換した値で曜日を求める
https://lab.syncer.jp/Web/JavaScript/Snippet/3/ が参考になりそうです。
で求めた曜日が、アラートを出したい曜日だったら、アラートを出す
|
if ( 2.で求めた曜日 === アラートを出したい曜日) {
var templateHtml = '<div class="alertDefault alert01" title={{>text}}><b>{{>text}}</b></div>';
var template = $.templates(templateHtml);
var data = {text: ' 表示したいメッセージ'};
var space = garoon.schedule.calendar.getDayFirstSpaceElement('GROUP_WEEK', date);
$(space).html(template(data));
}
もし JavaScript 初心者ということであれば、はじめよう JavaScript などで JavaScript のことを勉強してみるといいかと思いました。
途中から kintone カスタマイズになるのですが、第10回までは普通の JavaScript なので参考になるかと思います。
|
/*
* Garoon JavaScript API of sample program
* Copyright (c) 2017 Cybozu
*
* Licensed under the MIT License
*/
(function() {
‘use strict’;
var myJQuery = jQuery.noConflict(true);
(function($) {
// グループ週画面が表示されたときのイベント
garoon.events.on(‘schedule.calendar.groupWeekIndex.show’, function(event) {
var dates = event.dates;
var templateHtml = ‘’;
var template;
var data = {};
var space;
var day;
var weekday;
dates.forEach(function(date) {
// 年月日から日を取得
day = date.substr(8, 2);//garoon表示の日を取得
var dt = new Date(date); // garoon表示上の日のインスタンスを取得
var dt2 = new Date(dt.getFullYear(), dt.getMonth() + 1, 0);//dtの月末
console.log(“月末判定” + dt2);
if (day == dt2.getDate()) {//月末なら勤怠締め切り
templateHtml = ‘<div class=“alertDefault alert01” title={{>text}}><b>{{>text}}</b></div>’;
template = $.templates(templateHtml);
data = {text: ’ 勤怠締切日です’};
console.log(“勤怠条件一致”);
// スケジュールの予定枠最上部の空白要素を取得
space = garoon.schedule.calendar.getDayFirstSpaceElement(‘GROUP_WEEK’, date);
// 空白要素へhtmlをセット
$(space).html(template(data));
return;
} else //金曜日は掃除
weekday = dt.getDay();//曜日取得
if (weekday == 5) {
templateHtml = ‘<div class=“alertDefault alert02” title={{>text}}><b>{{>text}}</b></div>’;
template = $.templates(templateHtml);
data = {text: ‘朝掃除’};
console.log(“掃除条件一致”);
// スケジュールの予定枠最上部の空白要素を取得
space = garoon.schedule.calendar.getDayFirstSpaceElement(‘GROUP_WEEK’, date);
// 空白要素へhtmlをセット
$(space).html(template(data));
return;
}
});
});
})(myJQuery);
})();
これで出来ますよ
(weekday == 5) の5は金曜日なのでここを変えればOKです
注意
上の条件が一致するとelseは実行されません
同時に表示したい場合は別でファンクションするかif-else-elseに変えてください
system
(system)
クローズされました:
2023 年 12 月 13 日午前 7:16
6
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。