PDA

View Full Version : آموزش: حل مشکل فارسی در صفحات وب به طوره ریشه ای



صادق صدقی
چهارشنبه 15 آذر 1391, 09:51 صبح
به نام خدا

می خوام با یک مقاله که نمی شه گفت مقاله اما یک نمونه ی عمیلیاتی با زبان ساده و روان نحوه فارسی کردن کیبورد در مرورگر های مختلف با استفاده از زبان انگلیسی بدون استفاده از کلمات عجیب و غریب براتون توضیح بدم

ابتدا فایل js مربوطه را در سرایند سایت قرار می دهیم(Farsi.js)
ازین پس صفحه شما با وارد شدن ي عربی یا ک عربی ی به ک و یا ی فارسی تبدیل می کند.
برای ست کردن اینکه یک ورودی خاص مثلا textBox به طور کامل فارسی دریافت کند یک کنترل را اضافه می کنیم

سپس از طریق Source خاصیت lang کنترل را به fa تنظیم می کنیم
"ID="TextBox1" runat="server" lang="fa">"
حال در اجرا برای دریافت ورودی شما باید کیبورد را در حالت En قرار دهید تا بتوانید در این کنترل مقداری وارد نمایید
مشابه این عمل را شما حتما در سایت سازمان سنجش دیده اید که موقع تایپ کردن به شما پیغام میدهد که صفحه کلید خود را در حالت انگلیسی قرار دهید

در رابطه با Regular expressionها هم یک گریزی می زنم
مثلا شما می خواین توی text box فقط حروف فارسی از ورودی دریافت کنید.
اگر فقط این پردازش را در سمت کلاینت داشته باشید خوب خیلی راحت با غیر فعال کردن جاوا اسکریپت browser می تونید از این فیلتر رد بشید
حالا چطوری سمت سرور اینو parse کنیم؟
کدش رو براتون می نویسم با text box 2 که فقط حروف فارسی را قبول می کند!!!
If Regex.IsMatch(TextBox2.Text, "^[\u0600-\u06FF]+$") = False Then
'یعنی غیر از فارسی کاراکتر دیگه ای هم داره!!!
TextBox2.BackColor = Drawing.Color.Red

Else
'یعنی مشکلی نداره
TextBox2.BackColor = Drawing.Color.GreenYellow
End If

حالا یک نمونه سمت کلاینتی
نمیرم سمت سرور!!!

نکته:(فایل farsi.js در پوشه Scripts پروژه Attach شدس)
موفق باشید