فقط یک کلیک در یک ثانیه

- 3 هفته پیش
توسط ali salimi آپدیت شد
ali salimi ( 1510 تجربه )
3 هفته پیش

سلام بچه ها من یک فرم دارم که وقتی کلیک میکنی روش. مشکل داره که اگر مثلا دابل کلیک کنی دو بار فرم به دیتابیس میره. میخام محدودیت ایجاد کنم که هر ثانیه فقط یک کلیک اجازه زدن در ثانیه باشه.

آخه فرم من یه محاسباتیم با ریاضی انجام میده که اگه چند بار پشت سر هم کلیک بشه جواب درستی رو ارایه نمیده فقط باید یک بار کلیک بشه و مکث بشه که محاسبات رو برنامه انجام بده و بعد بتونه کلیک بعدیشو انجام بده.
سپاسگذارم اگه راهنمایی بشه
@hesammousavi

بهترین پاسخ انتخاب شده توسط ali salimi
حسام موسوی
3 هفته پیش

شما میتونید مقداری با عنوان loading درست کنید و هر وقت محاسبه شروع شد loading رو برابر با true قرار بدید و اگر روی دکمه کلیک شد شرط بزارید که اگر loading برابر با true بود اجرا نشه دوباره تا زمانی که پردازش قبلی تموم بشه و مقدار loading برابر با false بشه

حسام موسوی ( 142294 تجربه )
3 هفته پیش
تخصص : طراح و برنامه نویس

شما میتونید مقداری با عنوان loading درست کنید و هر وقت محاسبه شروع شد loading رو برابر با true قرار بدید و اگر روی دکمه کلیک شد شرط بزارید که اگر loading برابر با true بود اجرا نشه دوباره تا زمانی که پردازش قبلی تموم بشه و مقدار loading برابر با false بشه

Ali Mirzabagheri ( 120 تجربه )
3 هفته پیش

سلام از تابع 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);
}
}"

ali salimi ( 1510 تجربه )
3 هفته پیش

@samb21272
سپاسگذارم از شما دوست عزیز

ali salimi ( 1510 تجربه )
3 هفته پیش

@hesammousavi
حسام جان عاااااالی بود این حرکت. من اول خواستم کلیک رو ثانیه ای کنم که ممکن بود بعضی وقتا بیشتر از یک ثانیه طول بکشه نتیجه که این باعث مشکل میشد ولی با این حرکتی که گفتین باعث میشه هر وقت نتیجه قبل اوکی شد نتیجه جدید رو اعلام کنه و دیگه بستگی به سرعت سرور و سرعت محاسبه داره و مشکلی هم پیش نمیاد. سپاسگذارم قربان

برای ارسال پاسخ باید وارد سایت شوید