اضافه کردن کاما فیلد مبلغ با جاوااسکریپت
یکی از دغدغه های طراحان وب تازه کار در پروژه هایی که با فیلدهای مبلغ و قیمت سروکار دارند.
جدا کردن سه رقم سه رقم مبلغ ها است که خوانایی صفحات آنها را بالاتر ببرد؛
در این نوشته قصد آموزش راهی بسیار ساده برای جدا کردن سه رقم سه رقم فیلد مبلغ در جاوا اسکریپت را داریم. پس با ما همراه باشید.
موضوع آموزش :
اضافه کردن کاما خودکار در فیلدهای مبلغ جاوا اسکریپت.
( جدا کردن سه رقم سه رقم فیلد مبلغ در جاوا اسکریپت )
کد ::
<html> <head> <script type="text/javascript" language="javascript"> function autocomma(number_input) { number_input += ''; number_input = number_input.replace(',', ''); number_input = number_input.replace(',', ''); number_input = number_input.replace(',', ''); number_input = number_input.replace(',', ''); number_input = number_input.replace(',', ''); number_input = number_input.replace(',', ''); x = number_input.split('.'); x1 = x[0]; x2 = x.length > 1 ? '.' + x[1] : ''; var rgx = /(\d+)(\d{3})/; while (rgx.test(x1)) x1 = x1.replace(rgx, '$1' + ',' + '$2'); return x1 + x2; } </script> </head> <body> <form> <input name="amount_field" type="text" value="" onkeyup = "javascript:this.value=autocama(this.value);" > </form> </body> </html>
نکته :
این کد یک ایراد کوچکی که دارد این است که بعد از دریافت مقدار از ورودی شما باید کاراکترهای کاما را از ورودی حذف کرده تا به عدد صحیحی برسید در غیر اینصورت یک رشته ای بلااستفاده دارید.
در زبان پی اچ پی به صورت زیر می توانید کاراکتر کاما را حذف کنید:
$amount_field = str_replace(',','',$_POST[amount_field]);
توضیحات :
- کدهای بالا به زبان اچ تی ام ال و جاوا اسکریپت می باشد .
- کد فوق آماده می باشد شما می توانید آن را در کنار پروژه ی خود قرار داده و از آن استفاده کنید .
- با استفاده از کد بالا به راحتی می توانید فیلدهای مبلغ را سه رقم سه رقم از سمت چپ جدا کرده و زیبایی بصری خاصی به آنها بدهید.
خب کد بالا می تواند مرجع شما برای نوشتن یک نرم افزار هوشمند تر باشد ؛
در صورتی که این کدها را کامل تر کردید یا از روش های بهینه تری استفاده می کنید نسخه ای کامل تر از این کدها را برای ما ارسال کنید.
تا دیگران هم بتوانند از آن استفاده کنند .
نظرات خود را در ارتباط با آموزش “اضافه کردن کاما فیلد مبلغ با جاوااسکریپت” برای ما ارسال کنید.
پاینده باشید.
خیلی عالی بود .
البته راه ساده تری هم داره
const currencyFormatter = (number) => new Intl.NumberFormat( ‘en-US’ ).format( number )
از اینکه راه حل خودتون رو در بخش نظرات نوشتید متشکریم
سلام کد بالا رو کدوم قسمت از قالب وارد کنیم؟
کدهای داخل تگ head را داخل تگ head قالب خودتون قرار بدین و تگ input که برای تست گذاشته شده رو به حالتی که در مثال هست در قالبتون جای گذاری کنید.
سلام.ببخشید این کد برای من کار نمیکنه.همه چیز رو هم درست کپی کردم.مشکل از کجاست؟ممنون.
احتمالا جاوااسکریپت توی مرورگرتون غیرفعال هست در غیر اینصورت کد بالا قبلا تست شده الان هم دوباره تست شد و بدون مشکل کار میکنه
salam,
mersi estefade kardim
faghat line 6, 7 ro mitunid be in code taghyir bedid:
number_input = number_input.split(‘,’).join(”);
va hamintor be jaye line 9, 10:
x1 = x[0].replace(/\D/g,”);
x2 = x.length > 1 ? ‘.’ + x[1].replace(/\D/g,”) : ”;
چون هدف آموزش بود به شکل ساده نوشته شد که معلوم باشه در حال انجام چه کاری هستیم کد شما هم خوب هست مرتب تر و تمیزتر میشه
مرسی بابت پیشنهادتون
عالی
خیلی ممنونم