מיקום ולידטורים

מיקום ולידטורים

יש לי שדה טקסט ולידו 2 ולידטורים: 1. Required 2. regexp אני מעוניין שהם ישבו אחד על השני ולא אחד ליד השני במילים אחרות: אני מעוניין שהמסר שמגיע ללקוח יופיע תמיד על אותו label כיצד עושים זאת?
 

24sharon

New member
דרך לא כ"כ אלגנטית

אבל עובדת יופי תעשה אותם אבסלוטיים יחסית לDIV RELATIVE
 
אממ...

אפשר קצת יותר לפרט? הdivs צריכים לשבת אחד על השני. אם אני מבין נכון, poition:absolut יחסי לRelative יתן לי אותו אחריו ולא עליו? (או איך ממקמים אבסולוטי על Relative?) איך בדיוק עושים זאת?
 

EdotK

New member
../images/Emo45.gif

אולי לא הדרך הכי "נקיה", אבל כל כך יותר פשוטה מכל אופציה אחרת. מה שמראה ששליטה בHTML/JS לפעמים חוסכת הרבה מאוד כאב ראש.
 

drbunsen

New member
אתה יכול לשדרג את ה-JS

של ה-regex validator כך שקלט "ריק" ייחשב לא חוקי, ואז לא תצטרך לשים שני ולידטורים. עובד יופי ב-1.1 , ב-2.0 לא ניסיתי עדיין. מה שאתה צריך לעשות זה להעתיק אליך לספריית האפליקציה את קובץ ה-webuivalidation.js (נמצא בד"כ בתוך ספריית wwwroot\aspnet_client) ובתוכו לשנות את הפונקציה שעושה ולידציה ל-regularexpressionvalidator (להחליץ TRUE ב-FALSE באיזו שורה). באותה הזדמנות אתה יכול גם להוסיף כל מיני דברים מגניבים כמו: לצבוע את התיבת-טקסט שהINPUT שלה לא חוקי, וכד'. אם תרצה עוד פרטים - בשמחה.
 
נשמע מעניין!

לא מצאתי את הקובץ במיקום שציננת, אני עובד עם גרסה 2.0. רק להבנה: ברגע שאני מעתיק את הקובץ אלי הוא יתפוס על כל האפליקציה הספציפית שלי? כלומר כל קריאה לregexp valoidator תבצע גם בדיקה של שדה ריק?
 

drbunsen

New member
בערך,

הנה הפירוט: 1. קח את קובץ webuivalidation.js ושים אותו אצלך בספריית האפליקציה. 2. הוסף את השורה הבאה ל-web.config: <webControls clientScriptsLocation="./"></webControls> 3. בתוך קובץ ה-JS שנה את הפונ' RegularExpressionValidatorEvaluateIsValid :
if (ValidatorTrim(value).length == 0) ///////originally: true; return false;​
ו...זהו.... (ושוב: עובד ב-1.1 לא יודע לגבי 2.0 , אולי משהו השתנה). בהצלחה!
 

pintyo

New member
Display="Dynamic"

אם הבעייה היא רק ויזואלית - ז"א שאתה רוצה את ההודעות באותו מקום תוסיף פשוט Display="Dynamic" לשני הואלידטורים.
 

pintyo

New member
תצוגה של שניהם תלויה ב REGEX

אם מחרוזת ריקה לא תכשיל את ה REGEX אז יופיע רק ה RequiredFieldValidator, אחרת יהיה ערך בשדה ולכן ה RequiredFieldValidator לא יופיע אלא רק ה RegularExpressionValidator במידת הצורך
 

kst

New member
תשתמש בValidationSummary

תזרוק אותו בדף היכן שאתה רוצה שיופיעו השגיאות בתוך ה ולידטור בTEXT תכניס * אדומה ואת ההערות תזרוק לValidationSummary בהצלחה
 
למעלה