PDA

View Full Version : مشکل با RegularExpressionValidato



usef64
یک شنبه 28 خرداد 1391, 12:35 عصر
با سلام.
بچه ها من میخواستم واسه text box ام یک RegularExpressionValidato قرار بدم با شرط w{0,15} . این شرط برای حروف انگلیسی درست کار میکنه ولی برای حروف فارسی اشتباه کار میکند و به محض تایپ اولین کاراکتر فارسی، پیغام میده.
میشه بگید چرا؟

mohsen.nsb44
یک شنبه 28 خرداد 1391, 12:52 عصر
دوست عزیز کد w\ هم کاراتر هم رقم و ... میگیره شما دقیقا چه عملیو میخواید انجام بدین بگین تا بهتر راهنمایی بشین
اگه میخواین از حروف انگلیسی فقط استفاده بکنین کد زیر رو بنویسین


[a-z]+

اگه کار دیگه مد نظرتونه بیشتر توضیح بدین

usef64
یک شنبه 28 خرداد 1391, 13:16 عصر
من یک فیلد نام دارم، که توی دیتابیسم طوری تعریف کردم که فقط 15 کاراکتر بگیره. حالا میخوام این validator رو روی textbox ام قرار بدم که اگه بیشتر از 15 کاراکتر زد، بهش پیغام بده.

mohsen.nsb44
دوشنبه 29 خرداد 1391, 11:19 صبح
من یک فیلد نام دارم، که توی دیتابیسم طوری تعریف کردم که فقط 15 کاراکتر بگیره. حالا میخوام این validator رو روی textbox ام قرار بدم که اگه بیشتر از 15 کاراکتر زد، بهش پیغام بده.
شما یک کار راحتری هم میتونید انجام بدین
maxLenght کنترل تکست باکس رو بربر عدد 15 بگیرین که در این صورت تکست باکس شما بیشتر از 15 کاراکتر قبول نمیکند وگزینه زیر رو به به کنترل RegularExpressionValidator اضافه بکنید


ValidationExpression="[ا-ی]+"

که حروف فارسی فقط مورد قبول خواهد بود

usef64
سه شنبه 30 خرداد 1391, 11:25 صبح
ممنون. من این را نوشتم:



<asp:RangeValidator ID="RangeValidator1" runat="server" ErrorMessage="RangeValidator" ControlToValidate="txtName" MinimumValue="1" MaximumValue="15" ></asp:RangeValidator>

ولی باز به محض تایپ کردن، بهم پیغام میده.

mohsen.nsb44
سه شنبه 30 خرداد 1391, 14:45 عصر
ممنون. من این را نوشتم:



<asp:RangeValidator ID="RangeValidator1" runat="server" ErrorMessage="RangeValidator" ControlToValidate="txtName" MinimumValue="1" MaximumValue="15" ></asp:RangeValidator>

ولی باز به محض تایپ کردن، بهم پیغام میده.
دوست عزیز با این کدی که نوشتین تکست باکس شما عددی بین 1 و 15 رو قبول میکنه و غیر اون رو ارور میده

usef64
سه شنبه 30 خرداد 1391, 17:16 عصر
بله. ممنون.
اگه اینجوری که شما گفتید بزنم، فقط به کاربر اجازه ورود کاراکتر اضافه تر را نمیدهد ولی هیچ پیغامی هم نمیدهد.اگر بخواهم پیغام بدهد، باید چه کار کنم؟

mohsen.nsb44
سه شنبه 30 خرداد 1391, 17:48 عصر
بله. ممنون.
اگه اینجوری که شما گفتید بزنم، فقط به کاربر اجازه ورود کاراکتر اضافه تر را نمیدهد ولی هیچ پیغامی هم نمیدهد.اگر بخواهم پیغام بدهد، باید چه کار کنم؟
هدف شما مگر نه این است که به کاربر اجازه بدین بین 1 تا 15 کاراکتر وارد نماید؟
اگه اینه هدفتون با کدی که گفتم حل میشه کارتون
اگه هدف دیگه ای دارین بگین؟
مثلا وقتی شما میتونید ورودی رو فیلتر کنید چرا میخواهید حتما پیغام نشون بدین؟

usef64
چهارشنبه 31 خرداد 1391, 22:51 عصر
بله. درسته ولی خب مسلما اگر به کاربر پیغام دهد، user friendly تر میشه.به نظرتون بهتر نیست مشکل رو به کاربر اعلام کنه، که کاربر اونو اصلاح کنه و از سردر گمی در بیاد؟