Radio單選按鈕
單選按鈕用來讓使用者在一組選項中選擇其中一個,確保每次只能選中一個選項。
使用方法
按需引入元件:
import 'mdui/components/radio-group.js';
import 'mdui/components/radio.js';
按需引入元件的 TypeScript 型別:
import type { RadioGroup } from 'mdui/components/radio-group.js';
import type { Radio } from 'mdui/components/radio.js';
使用範例:
<mdui-radio-group value="chinese">
<mdui-radio value="chinese">Chinese</mdui-radio>
<mdui-radio value="english">English</mdui-radio>
</mdui-radio-group>範例
選取狀態
<mdui-radio-group> 元件的 value 屬性值即為目前選取的 <mdui-radio> 元件的 value 屬性值。你也可以透過更新 <mdui-radio-group> 元件的 value 屬性值,來切換目前選取的單選按鈕。
你可以單獨使用 <mdui-radio> 元件,此時可以透過 checked 屬性來讀取和修改選取狀態。
停用狀態
你可以透過在 <mdui-radio-group> 元件上加上 disabled 屬性,來停用整個單選按鈕組。
如果需要停用特定的單選按鈕,可以在 <mdui-radio> 元件上加上 disabled 屬性。
圖示
你可以透過設定 unchecked-icon 和 checked-icon 屬性,分別定義未選取和選取狀態下的單選按鈕的 Material Icons 圖示。也可以透過 unchecked-icon 和 checked-icon slot 來設定。
mdui-radio-group API
屬性
| HTML 屬性 | JavaScript 屬性 | Reflect | 型別 | 預設值 |
|---|---|---|---|---|
disabled | disabled | boolean | false | |
是否停用此元件 | ||||
form | form | string | - | |
關聯的 若未指定此屬性,則該元素必須是 | ||||
name | name | string | '' | |
單選按鈕群組的名稱,將與表單資料一起送出 | ||||
value | value | string | '' | |
單選按鈕群組目前選取的值,將與表單資料一起送出 | ||||
defaultValue | string | '' | ||
預設選取的值。在重設表單時,將重設為該預設值。該屬性只能透過 JavaScript 屬性設定 | ||||
required | required | boolean | false | |
送出表單時,是否必須選取其中一個單選按鈕 | ||||
validity | ValidityState | - | ||
表單驗證狀態物件,具體參見 | ||||
validationMessage | string | - | ||
如果表單驗證未通過,此屬性將包含提示資訊。如果驗證通過,此屬性將為空字串 | ||||
方法
| 名稱 | 參數 | 回傳值 |
|---|---|---|
checkValidity | boolean | |
檢查表單欄位是否通過驗證。如果未通過,回傳 | ||
reportValidity | boolean | |
檢查表單欄位是否通過驗證。如果未通過,回傳 如果驗證未通過,還會在元件上顯示驗證失敗的提示。 | ||
setCustomValidity |
| void |
設定自訂的錯誤提示文字。只要這個文字不為空,就表示欄位未通過驗證 | ||
mdui-radio API
屬性
| HTML 屬性 | JavaScript 屬性 | Reflect | 型別 | 預設值 |
|---|---|---|---|---|
value | value | string | '' | |
目前單選項的值 | ||||
disabled | disabled | boolean | false | |
是否停用目前單選項 | ||||
checked | checked | boolean | false | |
目前單選項是否已選取 | ||||
unchecked-icon | uncheckedIcon | string | - | |
未選取狀態的 Material Icons 圖示名。也可以透過 | ||||
checked-icon | checkedIcon | string | - | |
選取狀態的 Material Icons 圖示名。也可以透過 | ||||
autofocus | autofocus | boolean | false | |
是否在頁面載入完成後自動取得焦點 | ||||
tabindex | tabIndex | number | - | |
元素在使用 Tab 鍵切換焦點時的順序 | ||||
Slots
| 名稱 |
|---|
| 預設 |
文字內容 |
unchecked-icon |
未選取狀態的圖示 |
checked-icon |
選取狀態的圖示 |
CSS Parts
| 名稱 |
|---|
control |
左側圖示容器 |
unchecked-icon |
未選取狀態的圖示 |
checked-icon |
選取狀態的圖示 |
label |
文字內容 |