שלח תשובה

זירת השאלות

11 תשובות

  1. אתה מתכוון ל-input/textarea?
    אם כן – שאל בפורום צד לקוח.

    אם לא – אנא פרט למה אתה מתכוון.

  2. JUBRANO הגיב:

    את מה ששאאלתי בהתחלה
    הגבלת תווים

    ומניעה מהמשתמש לכתוב גרש

  3. אמממ…
    אם אתה רוצה להגביל אותו בעוד הוא מקליד – אתה צריך לבצע את זה באמצעות בסקריפט בצד לקוח.

    אם אתה רוצה לוודא שהוא לא עקף את הסקריפט הזה ולוודא שהתוכן שהתקבל לשרת מכיל לא יותר ממספר התווי שהרשית + הוא לא הקליד גרש – זה אתה מבצע באמצעות טכנולוגיית צד שרת – asp במקרה שלך.

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

    את הואלידציה (גם בשרת וגם בלקוח) הכי נכון לבצע באמצעות regexp, שזה תכונה של JS. רצוי שתקרא כמה מאמרים על זה, זה לא הכי פשוט, אבל ברגע שקולטים את הרעיון זה זורם.

    בצד לקוח אתה מבצע את הבדיקה באירוע onKeyPressed של התיבה – ז"א על כל תו שהלקוח מזין – מתבצעת הבדיקה, ובצד שרת אתה מעביר את כל המחרוזת שהיתקבלה דרך הבדיקה, שאם מחזירה false – מחזיר שגיאה מתאימה למשתמש.

  4. JUBRANO הגיב:

    דוגמה ממש קטנה על איך
    מגבילים את מספר התווים ב ASפ

    ואם אפשר דוגמא איך מונעים להכניס אות מסוימת  

  5. שימי הגיב:

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


    MaxLen=5
    if len(request.form("your_field"))>MaxLen then
           'your code…
    end if

    אות


    Letter="a"
    if instr(request.form("your_field"),Letter)>0 then
          'your code…
    end if

  6. JUBRANO הגיב:

    הערך של A שווה לאפס?
    איך אני אדע את המספרים של כל אות?

  7. שימי הגיב:

    היי
    Letter זה מחרוזת, אתה לא צריך לדעת את המספר של כל אות.
    הפונציה Instr בודקת אם המחרוזת השניה נימצאת במחרוזת הראשונה ואם כן, היא מחזירה את המיקום של ההופעה הראשונה, אם לא מוחזר 0.

שלח תשובה