تالار گفتمان nCIS.ir

نسخه‌ی کامل: جایگزین اعداد فارسی به جای اعداد لاتین
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
من اینو تو بخش javascript هم نوشتم که اگه مشکل دارد آن را حذف کنید.

سلام و خسته نباشید به دوستان عزیز
من اول ابتدا اصل قزیه رو واستون روشن میکنم.
به این اعداد ی نگا بندازید.

این اعداد انگلیسی هستند

'0','1','2','3','4','5','6','7','8','9'

این اعداد فارسی هستند.

'۰','۱','۲','۳','۴','۵','۶','۷','۸','۹'

من میخوام تو پروژه هرچی اعداد انگلیسی هستش رو حذف کنه و ب جاش از اعداد فارسی استفاده کنه.
مثلا اگه عدد 9 بود به جاش ۹ رو جایگزین کنن.

حالا اصل پروژه.
به این کد ی نگا بندازید.
من میخوام در اینجا وقتی که کاربر در داخل input عددی رو تایپ کرد اون عدد اگه انگلیسی بود به فارسی تبدیل کند.
درکل میخوام که کاربر نتواند انگلیسی تایپ کند و فقط فارسی تتایپ کند.

ب نظرتون چطوری میتونم این کار رو بکنم.
برای این کار از چ توابعی استفاده کنم.
اگه شبه کد شبیه به این رو دارید معرفی میکنید.

خیلی ممنون.



<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title> js </title>
</head>
<body>
 
<form  method="post" action="">
شماره یک
<input type="text" name="one" id="one"> 
شماره دو
<input type="text" name="two" id="two">
<input type="submit" value="submit">
 
<textarea id="">
</textarea>
 
</form>
<script type="text/javascript" src="jquery-1.8.3.js"></script>
<script type="text/javascript">
 
$('input').keyup(function(){
 
})
 
</script>
</body>
</html>

https://github.com/usablica/persian.js/blob/master/persian.js#L98
<script type="text/javascript">

function englishNumber(value) {
       if (!value) {
           return;
       }
       var englishNumbers = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"],
           persianNumbers = ["۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹", "۰"];

       for (var i = 0, numbersLen = englishNumbers.length; i < numbersLen; i++) {
           value = value.replace(new RegExp(englishNumbers[i], "g"), persianNumbers[i]);
       }
       return value;
}

$('input').keyup(function(){
$(this).val(englishNumber($this.val()));
}) 

</script> 


" برای چیزهایی از این دست با سرچ خیلی سریعتر به جواب میرسید. "
سلام
تشکر فراوان بابت راهنمایی ها
به این کد من ی نگا بندازید.
این کد کار نمیکنه.
بنظرتون مشکلش چیه؟



<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title> js </title>
</head>
<body>

<form  method="post" action="">
شماره یک
<input type="text" name="one" id="one"> 
شماره دو
<input type="text" name="two" id="two">
<input type="submit" value="submit">

<textarea id="">
</textarea>

</form>
<script type="text/javascript" src="jquery-1.8.3.js"></script>
<script type="text/javascript">

$('input').keyup(function(){
function englishNumber(value) {
      if (!value) {
          return;
      }
      var englishNumbers = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"],
          persianNumbers = ["۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹", "۰"];

      for (var i = 0, numbersLen = englishNumbers.length; i < numbersLen; i++) {
          value = value.replace(new RegExp(englishNumbers[i], "g"), persianNumbers[i]);
      }
      return value;
}
$('input').keyup(function(){
$(this).val(englishNumber($this.val()));
}) 

})

</script>
</body>
</html>


یکم بیشتر دقت کنید!!!

به نظرتون مشکل کجا بود!!!

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
function englishNumber(value) {
     if (!value) {
         return;
     }
     var englishNumbers = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"],
         persianNumbers = ["۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹", "۰"];

     for (var i = 0, numbersLen = englishNumbers.length; i < numbersLen; i++) {
         value = value.replace(new RegExp(englishNumbers[i], "g"), persianNumbers[i]);
     }
     return value;
}
$('input,textarea').keyup(function(){
$(this).val(englishNumber($(this).val()));
}) 
});
</script>
</head>
<body>
<form  method="post" action="">
شماره یک
<input type="text" name="one" id="one"> 
شماره دو
<input type="text" name="two" id="two">
<input type="submit" value="submit">
<textarea id="">
</textarea>
</form>
</body>
</html>