PDA

نسخه کامل مشاهده نسخه کامل : وارد کردن فقط عدد در textbox با asp.net



sofia79
16-07-2007, 09:19
می خوام با asp.net با c# وقتی کاربر شماره پرسنلی وارد میکنه فقط عدد بگیره و اصلا حروف تایپ نشه.
در چه قسمتی و چطوری باید برنامشو بنویسم؟

hamidreza_buddy
16-07-2007, 17:07
این کار مربوط میشه به اسکریپت های (کدها) client side .
یعنی باید در طرف client این کار انجام بشه و نه server.
پس اولین چیزی که تو اینگونه موارد باید توجه کنید اینه که باید به فکر راه حل بوسیلۀ یک کد client side باشید (مثلاً javascript) و نه server side (مثلاً asp یا php)

توی javascript یک event وجود داره به نامه onkeypressd . یعنی مثل یه تابع میمونه که هر دفعه یک دکمه زده میشه اون تابع اجرا میشه. می تونیم توی این تابع کدی رو قرار بدیم که چک کنه که آیا توی textbox ما به غیر از عدد چیز دیگه ای تایپ شده یا نه؟

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

امیدوارم متوجه شده باشی.

ویرایش: این هم لیست کامل event های javascript :
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

my friend
16-07-2007, 18:49
این روش یه مشکلی داره:
اگه کاربر قابلیت جاوااسکریپت مرورگر رو غیر فعال کرده باشه این روش کار نمیکنه و همه چی بهم میریزه.

تو تمام زبان های برنامه نویسی ( تا اونجایی که من اطلاع دارم ) از عبارات منظم پشتیبانی میشه.
اگه با این روش اطلاعات اون تکست باکس رو بگیریم و پردازش کنیم دیگه اشتباهی روی نمیده.

متاسفم ، asp.net بلد نیستم و در این مورد نمیتونم کمک کنم...

sofia79
17-07-2007, 08:05
شما می گین برای رویداد onkeypress اون برنامه javascript بنویسم در حالی که من نمی خوام دکمه ای زده بشه بعد بگه داخل textbox عدد نیست میخوام وقتی کریسر داخل textbox مربوطه چشمک میزنه کلیه کلیدهای حروف قفل بشه و فقط کلیدهای اعداد فعال باشن و هرچی کلیدهای حروف فشار بدیم
هیچ حرفی تایپ نشه.

hamidreza_buddy
18-07-2007, 12:47
این روش یه مشکلی داره:
اگه کاربر قابلیت جاوااسکریپت مرورگر رو غیر فعال کرده باشه این روش کار نمیکنه و همه چی بهم میریزه.

تو تمام زبان های برنامه نویسی ( تا اونجایی که من اطلاع دارم ) از عبارات منظم پشتیبانی میشه.
اگه با این روش اطلاعات اون تکست باکس رو بگیریم و پردازش کنیم دیگه اشتباهی روی نمیده.

متاسفم ، asp.net بلد نیستم و در این مورد نمیتونم کمک کنم...


تنها روش client ساید همین جاوااسکریپته. اگه می خواهید که اطلاعات به سرور فرستاده بشه که از همون RegularExpression باید استفاده کرد. یعنی کاربر هر چی بخواد وارد می کنه و بعد اطلاعات رو به سرور می فرسته که اونجا چک میشه که آیا همۀ کاراکترها رقم هستند یا نه.



شما می گین برای رویداد onkeypress اون برنامه javascript بنویسم در حالی که من نمی خوام دکمه ای زده بشه بعد بگه داخل textbox عدد نیست میخوام وقتی کریسر داخل textbox مربوطه چشمک میزنه کلیه کلیدهای حروف قفل بشه و فقط کلیدهای اعداد فعال باشن و هرچی کلیدهای حروف فشار بدیم
هیچ حرفی تایپ نشه.

اگه کد بالا رو امتحان کنید می بینید که کاربر نمی تونه هیچ حرفی رو در textbox وارد کنه. یعنی همون چیزی که من براتون نوشتم (البته اگه امتحانش کرده باشین)

hamidreza_buddy
18-07-2007, 12:51
در ضمن یه سری کنترل هایی در asp.net وجود دارند که به صورت client side کار می کنن و کارشون تشخیص درست بودن یک textBox هست. به این کنترل ها Validator گفته می شود. (البته اون چیزی که می خاین نیست چون فقط در هنگام زدن یک دکمه چک می کنند که آیا اطلاعات فلان textbox درست هست یا نه.)

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

mamadfelfel1988
19-07-2007, 03:58
ini ke dashemon migeh kar mikoneh vali rahe digeh ee ham hast ke kar ba ajax ke on safe kilido ghofl mikone va nemizare add vared koneh man allan hozor zehn nadaram vali to w3school.org hast

AM 241
19-07-2007, 04:17
این کار مربوط میشه به اسکریپت های (کدها) client side .
یعنی باید در طرف client این کار انجام بشه و نه server.
پس اولین چیزی که تو اینگونه موارد باید توجه کنید اینه که باید به فکر راه حل بوسیلۀ یک کد client side باشید (مثلاً javascript) و نه server side (مثلاً asp یا php)

توی javascript یک event وجود داره به نامه onkeypressd . یعنی مثل یه تابع میمونه که هر دفعه یک دکمه زده میشه اون تابع اجرا میشه. می تونیم توی این تابع کدی رو قرار بدیم که چک کنه که آیا توی textbox ما به غیر از عدد چیز دیگه ای تایپ شده یا نه؟

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

امیدوارم متوجه شده باشی.

ویرایش: این هم لیست کامل event های javascript :
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]


ميشه VBبيش رو هم بگيد