|
![]() |
# 1 |
מנהל פורום, עסק רשום
|
כמו שאדיר ציין, מאוד חשוב לבצע את הולידציה של משלוח הטופס לא על כפתור השליחה אלא על ארוע השליחה של הטופס, כלומר ארוע onsubmit.
למה? כי הנחת העבודה שלנו צריכה להיות שלא משנה לנו כיצד המשתמש הגיע למצב שהטופס מנסה להשלח. במילים אחרות, לא משנה לנו אם המשתמש לחץ על כפתור "שלח", לחץ enter כשהוא באחד מה-Input-ים או שסקריפט javascript במקום אחר מנסה לשלוח את הטופס מסיבה לא ברורה. בסופו של דבר, אנחנחו רוצים לעשות את הולידציה כששולחים את הטופס ויהי מה. לא כשלוחצים על כפתור השליחה ולא בשום פעולה/ארוע אחרים. |
![]() |
![]() |
# 2 | |
חבר וותיק
|
ציטוט:
אז ניתן לעשות מה שאני מבקש? חוץ מלעטוף עם DIV שאז זה בעייתי יותר? או שבאמת כאשר הכפתוןר מנוטרל לא ניתן? |
|
![]() |
![]() |
# 3 | |
עסק רשום [?]
|
ציטוט:
http://jsfiddle.net/zqNvQ/1/ Last edited by אביב; 02-06-13 at 23:28.. |
|
![]() |
![]() |
# 4 | |
חבר וותיק
|
ציטוט:
|
|
![]() |
![]() |
# 5 |
עסק רשום [?]
|
לא מדובר פה על "רע" ו-"טוב",
כמו שאדיר ויגאל אמרו onsubmit הוא אירוע המייצג שליחת טופס בין אם זה באמצעות כפתור Submit או כול טריגר שמפעיל את submit() (שים לב onsubmit מתייחס לאובייקט הטופס). לעומת onclick שהוא אירוע יותר כללי - לחיצה על הכפתור השמאלי של העכבר. תוכל לקרוא עוד כאן. |
![]() |
![]() |
# 6 |
מנהל פורום, עסק רשום
|
האמת היא שזה בהחלט רע. אפשר לעקוף את החסימה שלך בקלות אם נניח בטופס יהיה גם שדה וכשהוא בפוקוס היוזר ילחץ enter כדי לשלוח את הטופס. הטופס ישלח בלי שום בעיה למרות שאי אפשר לשלוח אותו עם הכפתור למטה שכתוב עליו "שלח". בקיצור, הפתרון הזה שקול לפשוט לשים טקסט ליד הכפתור של "בבקשה אל תשלח את הטופס אם לא סימנת V". |
![]() |
![]() |
# 7 | |
עסק רשום [?]
|
ציטוט:
|
|
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
כלים לאשכול | |
תצורת הצגה | |
|
|