質問: Math.round((nowTime - startTime) / 1000); $("#elapsed").html(elapsedtime); if (elapsedtime > sec) { clearInterval(timerId); $("#elapsed").html(""); alert("タイマー終了"); $(".btn-group button").prop("disabled", false); } elapsedtime++; }, 1000); } ```
回答: 単にクリック連打してしまった時に多重送信を防ぐのなら、javascriptで抑制する事は出来ます。 今回質問者さんが要求するような、数時間の投稿防止の場合、サーバ側(PHP)で投稿をキャンセルするか、投稿が出来ない事を示すメッセージを投稿画面に表示したり、投稿されてしまった時はエラーページを出せばいいような気がします。 解除まで残り1分の時に2分間ページを表示し続けることで、解除時に自動的にボタンを有効にするなどの事をしたいのであれば、サーバ側で投稿可否ステータスを返す仕組みを作った上で、javascriptで非同期にそのステータスを取りに行きチェックする必要があります。 ですが、投稿ボタンが無効でもブラウザのデバッグ機能で有効化することは出来るし、悪意のあるアクセスによって投稿処理が送られてくることも無いとも言い切れないので、どちらにせよサーバ側で対処する必要はあります。