No.2ベストアンサー
- 回答日時:
土日は簡単ですが、祝日はややこしいので配列に設定して比較する。
祝日の配列は、定期的にメンテナンスする。
という条件で作成してみました。
また、祝日も計算で求めるのであれば、以下が参考になると思います。
http://qiita.com/osamu_takeuchi/items/0623c8aced …
これに、「長期連休」を追加すれば出来ると思います。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>sample</title>
<style type="text/css">
</style>
<script type="text/javascript">
function ShippingTime(){
// 祝日(定期的にメンテナンスする)
holDay = new Array(
"2015/12/23", // 天皇誕生日
"2016/1/1", // 元日
"2016/1/11", // 成人の日
"2016/2/11", // 建国記念の日
"2016/3/20", // 春分の日
"2016/3/21", // 振替休日
"2016/4/29", // 昭和の日
"2016/5/3", // 憲法記念日
"2016/5/4", // みどりの日
"2016/5/5", // こどもの日
"2016/7/18", // 海の日
"2016/9/19", // 敬老の日
"2016/9/22", // 秋分の日
"2016/10/10", // 体育の日
"2016/11/3", // 文化の日
"2016/11/23", // 勤労感謝の日
"2016/12/23" // 天皇誕生日
);
dayWek = new Array("日", "月", "火", "水", "木", "金", "土");
// 今日から4営業日先を求める
dt = new Date();
for(i = 0; i < 4; i++) {
dt.setTime(dt.getTime() + (1 * 24 * 3600 * 1000));
// 土日の処理
if( dt.getDay() == 6 || dt.getDay() == 0 ) i--;
// 祭日の処理
for(j = 0; j < holDay.length; j++) {
hd = holDay[j].split("/");
if(hd[0] == dt.getYear() + 1900 && hd[1] == dt.getMonth() + 1 && hd[2] == dt.getDate()) i--;
}
}
// 求めた日付を表示する
shpDt = "今日ご注文いただいた分は";
shpDt += dt.getYear() + 1900 + "年";
shpDt += dt.getMonth() + 1 + "月";
shpDt += dt.getDate() + "日(";
shpDt += dayWek[dt.getDay()] + ")";
shpDt += "発送予定です";
document.getElementById("ShpTime").innerText = shpDt;
}
</script>
</head>
<body onLoad="ShippingTime()">
<div id="ShpTime"></div>
</body>
</html>
No.1
- 回答日時:
日付けに対する発送日の対比表を作っておく
もしくは、営業日カレンダー(逆に休日カレンダーでも可)を作っておく
のが賢明でしょう
とくに休日の自動計算は融通がきかないし、万が一お客様に間違った情報を
お伝えするとお客様に迷惑をかけるためお勧めできません
営業日カレンダーは既に掲載してあります。
土日は固定で定休日なのですが、確かに祝日や長期連休はjs内に個別にデータを打ち込む方法になるかと思います。
営業日カレンダーについては、別のjsにて1年分の祝日と自社連休を打ち込み、サイドカラムに2ヶ月ごとに出すようにしております。
ただ、出荷日が商品毎に違う為、商品ページ毎に出荷日を掲載したいので、やはり自動で出せる方法をさがしております。
例
http://www.ultra-asp.com/tour/abanner
これに自社連休が設定できる物を目指しています。
カレンダーと対比表を出すのも方法としてはありますね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Amazon Amazonの荷物が配達完了になっているのに、「予定より遅れています(配達中です)」と出ています。 4 2022/06/15 09:32
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- 郵便・宅配 クロネコヤマトの「陸・海上切替え」について 1 2022/07/18 19:57
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- その他(Microsoft Office) エクセルの休日について教えてください。 1 2023/01/06 15:45
- Visual Basic(VBA) 翌日にお休み予定の従業員がいる場合にアラートを出したい 1 2023/07/11 11:18
- ヤフオク! 関税 詐欺でしょうか?ヤフオク 3 2023/06/25 11:22
- 転職 転職活動中で2社内定があり迷っています。皆様ならAとBどちらの方が良いと思いますか?理由もお願いしま 1 2023/02/06 12:20
- その他(ネットショッピング・通販・ECサイト) 12月15日にorder@krsaid.comに注文支払いして入金確認と準備期間3日から8日まで発送 1 2022/12/26 10:29
- Excel(エクセル) 【Excel質問】 「本日の日付」から指定条件を満たす営業日経過後の日数を表示させる関数式 3 2022/06/06 23:28
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavaScriptでの西暦下2桁での表...
-
JavaScriptでiframeの内容を「...
-
<body>タグを書き換えたい
-
自動ジャンプでフォームデータ...
-
クリックすると別の文章を表示する
-
キーを押している間の時間を計...
-
Javascriptの出力結果をhtmlボ...
-
getElementsByNameで要素が取得...
-
bodyタグのfocus
-
iframeの中から親ページをスム...
-
リンク移動先のURLを取得
-
<a href="#" …>の意味を教えて...
-
bodyにidをつける理由は何ですか?
-
別ファイルのfunctionの読み込み方
-
複数のJavascriptを1つのscrip...
-
base64encodeでの文字化けについて
-
javascriptでalertの文字列をコ...
-
ウインドウの後ろに隠れている...
-
cssにjavascriptを入れる?呼び...
-
Vbscriptで自分自身のウィンド...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
getElementsByNameで要素が取得...
-
SCRIPT5007: 未定義または NULL...
-
初心者javascript ウィンドウサ...
-
function の return 値を表示し...
-
JavaScriptでiframeの内容を「...
-
JavaScript でキーを送る
-
フォーカス移動抑止について
-
iframeの中から親ページをスム...
-
html javascript 作った配列を...
-
ボタンのID名を取得するには?
-
キーを押している間の時間を計...
-
自動ジャンプでフォームデータ...
-
bodyタグのfocus
-
リンク移動先のURLを取得
-
チェックボックスの選択パター...
-
JavaScriptでの西暦下2桁での表...
-
htaでVBSのソースを書いたらエ...
-
乱数を一定時間毎に表示させた...
-
「オブジェクトを指定してくだ...
-
jQuery ツールチップの中のリンク
おすすめ情報