رفتن به محتوای اصلی

رادیو

انتخاب دقیقاً یک گزینه از چند گزینه؛ به شکل فهرست، افقی یا کارت‌های قابل‌انتخاب.

فهرست

روش ارسال
<RadioGroup label="روش ارسال" name="shipping" defaultValue="post">
<Radio value="post" label="پست پیشتاز" description="۳ تا ۵ روز کاری" />
<Radio value="courier" label="پیک" description="همان روز، فقط تهران" />
<Radio value="pickup" label="تحویل حضوری" disabled />
</RadioGroup>

افقی

اندازه
<RadioGroup label="اندازه" variant="inline" name="size" defaultValue="m">
<Radio value="s" label="کوچک" />
<Radio value="m" label="متوسط" />
<Radio value="l" label="بزرگ" />
</RadioGroup>

کارت‌های قابل‌انتخاب

برای گزینه‌هایی که توضیح بیشتری لازم دارند، مثل انتخاب پلن.

پلن اشتراک

انتخاب: pro

<RadioGroup label="پلن اشتراک" variant="cards" value={plan} onChange={setPlan}>
<Radio value="basic" label="پایه" description="۱ کاربر · ۹۰ هزار تومان در ماه" />
<Radio value="pro" label="حرفه‌ای" description="تا ۲۰ کاربر · ۴۹۰ هزار تومان در ماه" />
<Radio value="org" label="سازمانی" description="کاربر نامحدود · تماس بگیرید" />
</RadioGroup>

ویژگی‌های RadioGroup

نامنوعپیش‌فرضتوضیح
labelReactNode—عنوان گروه (legend) — الزامی
namestringخودکارنام فیلد فرم
value / defaultValuestring—گزینهٔ انتخاب‌شده
onChange(value: string) => void—با تغییر انتخاب
variant"list" | "inline" | "cards""list"چیدمان
hint / errorReactNode—راهنما و خطای گروه
required / disabledbooleanfalseالزامی یا غیرفعال کردن کل گروه

دسترس‌پذیری

  • گروه در <fieldset> با <legend> است؛ صفحه‌خوان عنوان گروه را پیش از هر گزینه می‌خواند.
  • رادیوها بومی‌اند: Tab وارد گروه می‌شود و کلیدهای جهت‌دار بین گزینه‌ها جابه‌جا می‌کنند.
  • اگر کاربر باید چند گزینه انتخاب کند، از چک‌باکس استفاده کنید.