У меня есть форма, которую отправляет пользователь. После этого я хочу выделить некоторое время, скажем, 2 часа, в течение которых пользователь все еще может редактировать форму. Через 2 часа после отправки формы я хочу включить опцию «Заблокировано», после чего он не сможет редактировать. Для этого я включаю все поля как «только для чтения» через jQuery.
Но проблема в том, что это происходит при загрузке страницы. Как выполнить эту задачу, как в бэкэнде, например, без загрузки страницы.
Я использую следующий код таймера для этого, но проблема в том, что он будет работать, когда эта страница будет загружена, но я хочу добиться этого как как только пользователь отправил вам форму. Код: //
var date = {{data.Date}};
var datePresent= date.getDate();
var hours = date.getHours();
var minutes = date.getMinutes();
surprise(hours,minutes);
function surprise(hours,minutes) {
(function loop() {
var now = new Date();
if (now.getHours() === hours && now.getMinutes() === minutes+1) {
$(".common").prop("readonly", true);
}
now = new Date(); // allow for time passing
var delay = 60000 - (now % 60000); // exact ms to next minute interval
setTimeout(loop, delay);
})();
}