نمایش نتایج 1 تا 5 از 5

نام تاپیک: کمک : می خوام در یک Input فقط انگلیسی تایپ بشود

  1. #1

    کمک : می خوام در یک Input فقط انگلیسی تایپ بشود

    با سلام خدمت تمامی دوستان

    همانطور که می دانید تابعی داریم که توسط آن می شود کاری کرد که فقط بشود در یک Input فارسی تایپ کرد

    حالا من تابعی می خوام که برعکس این باشد و فقط بشود در یک Input انگلیسی تایپ کرد و نشود فارسی یا هر زبان دیگه ای تایپ کرد

    منتظر کمک شما دوستان هستم

    با تشکر

  2. #2
    شما باید با استفاده از JavaScript تابعی را در OnkeyDown روی input تعریف کنید که این تابع چک کند که ایا انگیسی تایپ شده یا نه ؟

  3. #3
    کاربر دائمی آواتار cybercoder
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    root/
    پست
    2,016
    البته 100 درصد روش حساب نکن چون Javascript رو به راحتی می شه خاموش کرد

  4. #4
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465
    نقل قول نوشته شده توسط vahidAM مشاهده تاپیک
    البته 100 درصد روش حساب نکن چون Javascript رو به راحتی می شه خاموش کرد
    قبلش میشه چک کرد و دید که که وضعیت browser چه جوریه اگه فعال نبود از کاربر بخوای که بقول شما روشنش کنه !

  5. #5
    میتونی بسته به نیاز سرور ساید و کلاینت ساید یا هر دو چک کنی.
    بحثش مفصل هست اگر بخوای سیستم رو به این صورت پیاده کنی که مثلا کاربر اصلا هیچ چیز دیگه نتونه تایپ کنه. برای اینترنت اکسپلورر و فایرفاکس فرق میکنه و پیچیده هست و نکات زیادی داره.

    تابعی هم بنده نوشته بودم که شاید در این راه بکار بیاد:

    <html>
    <body style="background-color: #EEF3E2">
    <h3>Java Script</h3>
    <div style="font-size: 15pt; white-space: pre">
    <script language="javascript">

    function is_ara_fa(txt) {
    return /^([\u0600-\u06FF]|\s)+$/.test(txt);
    }

    txt_arr=new Array(
    "مادرم روزت مبارک"
    , "مادر - Mother",
    "سلام!",
    "سلام",
    "سلام بچه ها، خونهء ما اینجاست؛"
    , "\xD8",
    "گچ پژ ّ َ ِ ِ ُ ً ٍ "
    , "ی ی ک ک",
    "فارسی+عربی",
    "نقطه.",
    "بدون نقطه",
    "اعداد فارسی ۱۲۳۴",
    "۴/۲",
    "۴÷۲",
    "ش=س",
    " "
    );

    for(i in txt_arr) {
    document.write('«<span style="color: blue">', txt_arr[i], "</span>» ");
    if(is_ara_fa(txt_arr[i])) document.write('<span style="color: green">is fully Arabic/Farsi</span>');
    else document.write('<span style="color: red">contains non-Arabic/Farsi</span>');
    document.write('<hr />');
    }

    </script>
    </div>
    <h3>Java Script</h3>
    </body>
    </html>


    البته این جزیی از یک مطلب دیگه بود که در فروم دیگری درج کرده بودم؛ تابع تشخیص متون فارسی در پی اچ پی بود موضوع بحث که این قسمت کلاینت ساید برای تکمیلش اضافه شد.
    حالا این تابع میتونه ورودی رو وقت سابمیت چک کنه و اگر فارسی/عربی بود قبول نکنه و پیغام مقتضی به کاربر بده. البته احتمالا باید تکمیلش کنی و کاراکترهای بخصوصی رو بهش اضافه/کم کنی. فعلا فقط فاصله به یادم میاد.

    --------

    ضمنا با تغییر رنج یونیکد مربوطه میتونی مستقیما انگلیسیش کنی که بهتره (فرضا طرف اگر چینی هم وارد کنه اجازه نمیده).
    اما کلا چک کردن انگلیسی بنظرم کار خیلی ساده تری هست و از راههای دیگه ای میشه براحتی انجامش داد.
    شاید این چیزی که اینجا گفتم و گذاشتم به کارت نیاد و مستقیما مربوط نباشه، اما شاید ایده دهنده باشه. برای چک کردن ورودی فارسی در پی اچ پی مشکل وجود داشت چون پی اچ پی پشتیبانی Native از یونیکد نداره درحال حاضر (وعده برای نسخهء ۶).
    چیزی مثل تایپ کردن دونه دونهء کاراکترها در یک رشته و بعد مقایسهء این رشته هم راه اصولی و مطمئنی نیست و در پی اچ پی مشکل امنیتی هم داره. پس با رنج یونیکد باید اینکار انجام بشه و الگوی یک رشتهء utf8.

تاپیک های مشابه

  1. اسم input box در C#‎ چی بود؟
    نوشته شده توسط am_abbas65 در بخش C#‎‎
    پاسخ: 2
    آخرین پست: دوشنبه 01 مرداد 1386, 06:25 صبح
  2. تبادل اطلاعات از یک سایت به سایت دیگر با input ها
    نوشته شده توسط kochol در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: دوشنبه 07 خرداد 1386, 10:44 صبح
  3. input box
    نوشته شده توسط z_barnamenevis در بخش VB.NET
    پاسخ: 1
    آخرین پست: پنج شنبه 03 خرداد 1386, 14:24 عصر
  4. پاس دادن یه Input به عنوان پارامتر ورودی یه تابع
    نوشته شده توسط sarasara در بخش ASP.NET Web Forms
    پاسخ: 5
    آخرین پست: چهارشنبه 05 اردیبهشت 1386, 12:53 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •