מניעת Double Submit – שליחת טופס פעמיים

פתרון לבעיית לחיצה כפולה של משתמשים על כפתור Submit בטפסים באתר אינטרנט.

אחת הבעיות המציקות שיש בטפסים שהם לא AJAX היא תופעה של משתמשים פזיזים שלוחצים פעמיים Submit בטופס כלשהו. במיוחד כאשר יש עומס על השרת או סיבות אחרות שגורמות לטופס לבצע Submit איטי. בנוסף יש משתמשים שמתבלבלים ולוחצים Double Click באופן בלתי מודע כי כך הם רגילים מחלונות.

ישנם שני פתרונות פשוטים לעניין. הראשון באמצעות jQuery והשני באמצעות הוספת onclick לכפתור ה-submit עצמו. הפתרון מבוסס על כך שלחיצה הופכת את הכפתור ל-disabled ומשגרת את הטופס ובכך מונעת לחיצה כפולה.

פתרון שמבוסס על jQuery:

לא לשכוח לשים קישור לסקריפט של jQuery!


$(document).ready(function() {
	$('input[type=submit]').click(function(){
		 this.form.submit();
		 $(this).attr("disabled","disabled");
	});
});

פתרון שמבוסס על הוספת onclick לכפתור ה-Submit עצמו:


onclick="this.disabled=true;this.form.submit();"

נסו ותהנו.

פוסטים נוספים שכדאי לקרוא

תמונה של הבית הלבן עם מחשוב ענן וטקסט: FEDRAMP
פתרונות ומאמרים על פיתוח אינטרנט

FedRAMP & FIPS מבוא למתחילים

פרק מיוחד, לצד הקלטה של פרק של עושים תוכנה על אחת התקינות החשובות ביותר עבור חברות שסביר להניח שלא הכרתם

פתרונות ומאמרים על פיתוח אינטרנט

רינדור של קליינט סייד עם SSR

הסבר קצר על SSR מול רינדור קלאסי ולא. לא תמיד זה טוב להשתמש בו. אין כדור כסף שיכול לפתור הכל.

DALL·E 2023-10-21 22.28.58 - Photo of a computer server room with red warning lights flashing, indicating a potential cyber threat. Multiple screens display graphs showing a sudde
יסודות בתכנות

מבוא לאבטחת מידע: IDOR

הסבר על התקפה אהובה ומוצלחת שבאמצעותה שואבים מידע מאתרים

גלילה לראש העמוד