سلام بچه ها من یک فرم دارم که وقتی کلیک میکنی روش. مشکل داره که اگر مثلا دابل کلیک کنی دو بار فرم به دیتابیس میره. میخام محدودیت ایجاد کنم که هر ثانیه فقط یک کلیک اجازه زدن در ثانیه باشه.
آخه فرم من یه محاسباتیم با ریاضی انجام میده که اگه چند بار پشت سر هم کلیک بشه جواب درستی رو ارایه نمیده فقط باید یک بار کلیک بشه و مکث بشه که محاسبات رو برنامه انجام بده و بعد بتونه کلیک بعدیشو انجام بده.
سپاسگذارم اگه راهنمایی بشه
@hesammousavi
سلام از تابع setTimeout میتونید برای این کار استفاده کنید.
این هم یک مثال ساده:
"
let Time = true;
function clickPerSecond() {
if (Time == true) {
//get text from input
let text = document.getElementById('test').value;
//show text in HTML by innerHTML
document.getElementById('test2').innerHTML = text;
//set Time false
Time = false;
} else {
//Don't Access Message
document.getElementById('test2').innerHTML = "Don't Access";
// setTimeout for set Time true after 1 Second
setTimeout(function () {
Time = true;
}, 1000);
}
}"
@samb21272
سپاسگذارم از شما دوست عزیز
شاید پاسخ شما همینجا باشد
@hesammousavi
حسام جان عاااااالی بود این حرکت. من اول خواستم کلیک رو ثانیه ای کنم که ممکن بود بعضی وقتا بیشتر از یک ثانیه طول بکشه نتیجه که این باعث مشکل میشد ولی با این حرکتی که گفتین باعث میشه هر وقت نتیجه قبل اوکی شد نتیجه جدید رو اعلام کنه و دیگه بستگی به سرعت سرور و سرعت محاسبه داره و مشکلی هم پیش نمیاد. سپاسگذارم قربان