• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
تایپ عدد در تکست فیلد
#1
سلام . روزتون بخیر. من از این کد برای اینکه کاربر فقط مجاز به وارد کردن عدد در تکست فیلد باشه استفاده میکنم .
کد:
<script type="text/javascript">
            function isNum(evt) {
                var charCode = (evt.which) ? evt.which : event.keyCode
                if ((charCode >= 31 && charCode <= 39)) {
                    return true;
                }
                alert('Error: شما مجاز به وارد کردن عدد میباشید');
                return false;
            };
        </script>
کد:
<input id="txt" onkeypress="return isNum(event)" type="text"/>
اینو در یک صفحه ی خالی بعنوان آزمایشی انجام دادم که درست کار میکنه .
میخواستم بدونم در تابع isNum ورودی evt چیه و از کجا اومده ؟
و evt.wich یعنی چه ؟
چون فکر میکنم بهتر باشه نسبت به کدی که استفاده میکنم ، آگاهی داشته باشم.Wink
مرسی
آرام باش ؛ توكل كن ؛ تفكر كن و سپس آستينها را بالا بزن , آنگاه دستان خداوند را خواهي ديد كه زودتر از تو دست به كار شده است.امام علي عليه السلام.
  پاسخ
تشکر شده توسط :
#2
لینک : https://www.google.com/search?hl=fa&clie...HPblBPvYSw

در مورد which :
کد:
Which mouse button has been clicked?

There are two properties for finding out which mouse button has been clicked: which and button. Please note that these properties don’t always work on a click event. To safely detect a mouse button you have to use the mousedown or mouseup events.

which is an old Netscape property. Left button gives a value of 1, middle button (mouse wheel) gives 2, right button gives 3. No problems, except its meager support (and the fact that it’s also used for key detection).

Now button has been fouled up beyond all recognition. According to W3C its values should be:

    Left button – 0
    Middle button – 1
    Right button – 2

According to Microsoft its values should be:

    Left button – 1
    Middle button – 4
    Right button – 2

لینک : http://www.quirksmode.org/js/events_properties.html
  پاسخ
تشکر شده توسط : molana pary_daryayi
#3
سلام . خسته نباشید. من کد بالا رو قبلا امتحان کرده بودم و درست بود. الان چه کاراکتر و چه عدد وارد میکنم پیغام alert رو میده . البته کد رو اینطوری هم اصلاح کردم ولی باز نتیجه نداد:
کد:
<script type="text/javascript">
            function isNum(evt) {
                var charCode = (evt.which) ? evt.which : event.keyCode
                if ((charCode >= 31 && charCode <= 39)) {
                    return true;
                }
                else
                {
                alert('Error: شما مجاز به وارد کردن عدد میباشید');
                return false;
                }
            };
        </script>
این پیغام هم در ادامه ی پیام alert میاد :
prevet this page from creating additional diologs
این محدودیت چرا ایجاد شده ؟ چطور رفع کنم ؟
خیلی ممنونم.
آرام باش ؛ توكل كن ؛ تفكر كن و سپس آستينها را بالا بزن , آنگاه دستان خداوند را خواهي ديد كه زودتر از تو دست به كار شده است.امام علي عليه السلام.
  پاسخ
تشکر شده توسط :
#4
فهمیدم مشکل چی بود . من اشتباهی به جای قراردادن کد اسکی اعداد ، hex اونا رو گذاشته بودم !!!Wink
الان 48 و 57 گذاشتم درست شد.
ولی عجیبه که قبلا با hex امتحان کرده بودم مشکلی نداشت و این پیغام رو نمیداد....
آرام باش ؛ توكل كن ؛ تفكر كن و سپس آستينها را بالا بزن , آنگاه دستان خداوند را خواهي ديد كه زودتر از تو دست به كار شده است.امام علي عليه السلام.
  پاسخ
تشکر شده توسط :
#5
کد خوبیه اما توی فایرفاکس کار نمیکنه....من خودمم از همین روش استفاده میکنم اما نتونستم کاری کنم توی فایرفاکس کار کنه
بنده طعم ايمان را نمي چشد، تا اينكه دريابد آنچه اتفاق نيفتاده است نمي شد كه اتفاق بيفتد؛و آنچه شده و اتفاق افتاده است,نمي شد كه نشود و اتفاق نيفتد....حضرت علي(ع)
  پاسخ
تشکر شده توسط :
#6
نقل قول:کد خوبیه اما توی فایرفاکس کار نمیکنه....من خودمم از همین روش استفاده میکنم اما نتونستم کاری کنم توی فایرفاکس کار کنه

توی فایر فاکس مشکلی نداره. منم از همین تابع استفاده میکنم.
غایب
  پاسخ
تشکر شده توسط :
#7
میتونی با ایجکس بفرستی ، پی اچ پی چک کنه بعد نتیجه رو اعمال کنیBig Grin
التبته هیچکی اینکارو نمیکنهTongue
وبلاگ rezaonline.net/blog
سفارش برنامه نویسی reza.biz
Php , mysql , postgresql , redis , Yii and ... Cool
  پاسخ
تشکر شده توسط :
#8
(۱۳۹۱ شهریور ۰۱, ۱۰:۲۷ ب.ظ)webnevesht نوشته: کد خوبیه اما توی فایرفاکس کار نمیکنه....من خودمم از همین روش استفاده میکنم اما نتونستم کاری کنم توی فایرفاکس کار کنه

برای من هم تو firefox مشکلی نداره.
آرام باش ؛ توكل كن ؛ تفكر كن و سپس آستينها را بالا بزن , آنگاه دستان خداوند را خواهي ديد كه زودتر از تو دست به كار شده است.امام علي عليه السلام.
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان