پرش به مطلب اصلی

Number Input

کامپوننت x-number-input یک ورودی عددی پیشرفته برای فرم‌ها است که امکانات متنوعی مانند کنترل حداقل و حداکثر مقدار، پر کردن با صفر، اعداد اعشاری، پیشنهاد عدد، پیشوند و پسوند، نمایش مبلغ به حروف، کنترل راست/چپ‌چین بودن، پیام راهنما، پیام خطا و ... را ارائه می‌دهد.


ویژگی‌ها

  • پشتیبانی از پیشنهاد عدد (suggestions)
  • امکان تعیین پیشوند (prefix) و پسوند (suffix)
  • کنترل حداقل (min) و حداکثر (max) مقدار مجاز
  • پشتیبانی از حالت فقط‌خواندنی (readonly)
  • قابلیت تنظیم راست‌چین یا چپ‌چین بودن (textAlign)
  • پشتیبانی از autofocus
  • نمایش پیام راهنما هنگام غیرفعال بودن (disabledTooltip)
  • نمایش پیام خطا و پیام‌های سفارشی با استایل‌های مختلف
  • امکان شخصی‌سازی کلاس‌های CSS برای خود و کانتینر
  • پشتیبانی از پیام راهنما (hint)
  • پشتیبانی از لیبل و فضای رزرو لیبل
  • پشتیبانی از اعداد اعشاری (allowDecimal, decimalPlaces)
  • پشتیبانی از پر کردن با صفر (zeroFill, zeroFillSize)
  • پشتیبانی از اعداد بدون علامت (unsigned)
  • نمایش جداکننده هزارگان (showSeparator, separatorChar)
  • نمایش فلش‌های افزایش/کاهش مقدار (showArrows)
  • نمایش مبلغ به حروف (showAmountInWords, amountInWordsSuffix, amountInWordsClass, amountInWordsFactor)
  • تنظیم جهت ورودی (direction)
  • تنظیم گام افزایش/کاهش (step)
  • پشتیبانی از hotkey align (hotKeysAlign)
  • امکان کنترل محدوده به صورت بازه‌ای (rangeEnd)

ورودی‌های کامپوننت

نام پراپنوع دادهمقدار پیش‌فرضتوضیحات
namestringنام فیلد (اجباری)
labelstringnullلیبل اصلی
labelSpaceReservedboolfalseآیا فضای لیبل حتی بدون مقدار رزرو شود؟
idstringnullشناسه یکتا برای ورودی
valuestringnullمقدار اولیه
placeholderstringnullplaceholder برای ورودی
suggestionsarray[]آرایه‌ای از پیشنهادهای عددی
prefixstringnullپیشوند
suffixstringnullپسوند
maxintnullحداکثر مقدار مجاز
minintnullحداقل مقدار مجاز
zeroFillSizeint0تعداد رقم برای پر کردن با صفر
unsignedbooltrueفقط اعداد مثبت
zeroFillboolfalseفعال‌سازی پر کردن با صفر
autoFocusboolfalseفوکوس خودکار روی ورودی
allowDecimalboolfalseاجازه ورود اعداد اعشاری
decimalPlacesint0تعداد ارقام اعشار مجاز
directionstring'ltr'جهت ورودی (ltr یا rtl)
stepfloat1گام افزایش/کاهش مقدار
showSeparatorboolfalseنمایش جداکننده هزارگان
separatorCharstring','کاراکتر جداکننده هزارگان
showArrowsbooltrueنمایش فلش‌های افزایش/کاهش مقدار
textAlignstring'left'جهت متن ورودی (left یا right)
hotKeysAlignstring'left'محل قرارگیری فلش‌ها (left یا right)
showAmountInWordsboolfalseنمایش مبلغ به حروف
amountInWordsSuffixstring"تومان"پسوند مبلغ به حروف
amountInWordsClassstringnullکلاس CSS سفارشی برای مبلغ به حروف
amountInWordsFactorfloat1ضریب تبدیل مبلغ به حروف
requiredboolfalseاجباری بودن فیلد
disabledboolfalseغیرفعال بودن ورودی
messageStylestring/enum"message"استایل نمایش پیام (message, tooltip, ...)
defaultMessageTypestring/enum"info"نوع پیام پیش‌فرض (info, error, success, ...)
defaultMessagestringnullپیام پیش‌فرض برای نمایش
suppressLogicMessagesboolfalseعدم نمایش پیام‌های منطقی
hintstringnullپیام راهنما یا توضیح کوتاه
classstringnullکلاس CSS سفارشی برای خود ورودی
containerClassstringnullکلاس CSS سفارشی برای کانتینر
disabledTooltipstringnullپیام راهنما هنگام غیرفعال بودن ورودی
rangeEndint/stringnullسلکتور انتهای بازه برای تعریف بازه ورودی عددی

مثال‌ها

نمونه پایه

<x-number-input
containerClass="col-md-6 mt-10"
label="{{ __('general.code') }}"
name="code"
placeholder="مجموع حقوق را وارد نمایید"
suffix="ریال"
class="custom-input"
show-separator="true"
id="code"
show-amount-in-words
amount-in-words-suffix="تومان"
amount-in-words-factor="0.1"
/>