Selectセレクト
ドロップダウンセレクトコンポーネントは、ドロップダウンメニューで複数のオプションを提供し、ユーザーが必要なコンテンツを素早く選択できるようにします。
このページでは主に <mdui-select> コンポーネントの使用方法について説明します。ドロップダウンメニュー項目の使用方法については、<mdui-menu-item> を参照してください。
使用方法
コンポーネントを必要に応じてインポートします:
import 'mdui/components/select.js';
import 'mdui/components/menu-item.js';
コンポーネントの TypeScript 型を必要に応じてインポートします:
import type { Select } from 'mdui/components/select.js';
import type { MenuItem } from 'mdui/components/menu-item.js';
使用例:
<mdui-select value="item-1">
<mdui-menu-item value="item-1">Item 1</mdui-menu-item>
<mdui-menu-item value="item-2">Item 2</mdui-menu-item>
</mdui-select>複数選択のサポート
ドロップダウンセレクトはデフォルトで単一選択です。<mdui-select> コンポーネントの value 値は、現在選択されている <mdui-menu-item> の value 値です。
multiple 属性を追加すると、ドロップダウンセレクトで複数選択をサポートできます。この場合、<mdui-select> の value 値は、現在選択されている <mdui-menu-item> の value 値からなる配列になります。
注意:複数選択をサポートする場合、<mdui-select> の value 値は配列であり、JavaScript プロパティを通じてのみ読み取りと設定ができます。
補助テキスト
label 属性を使用してドロップダウンセレクトの上にラベルテキストを設定します。
placeholder 属性を使用して、値が選択されていない時のプレースホルダーテキストを設定します。
helper 属性を使用してドロップダウンセレクトの下部にヘルプテキストを設定します。helper スロットを使用してヘルプテキストを設定することもできます。
読み取り専用モード
readonly 属性を追加することで、ドロップダウンセレクトを読み取り専用モードに設定できます。
無効モード
disabled 属性を追加することで、ドロップダウンセレクトを無効にできます。
クリア可能
clearable 属性を追加すると、ドロップダウンセレクトに値がある場合、右側にクリアボタンが表示されます。
clear スロットを使用してクリアボタンをカスタマイズすることもできます。
ドロップダウンメニューの位置
placement 属性を使用して、ドロップダウンメニューの位置を設定できます。
テキスト右揃え
end-aligned 属性を追加すると、テキストが右揃えになります。
前後のテキストとアイコン
icon と end-icon 属性を設定することで、ドロップダウンセレクトの左側と右側に Material Icons アイコンを追加できます。icon と end-icon スロットを使用してドロップダウンセレクトの左側と右側に要素を追加することもできます。
prefix と suffix 属性を設定することで、ドロップダウンセレクトの左側と右側にテキストを追加できます。prefix と suffix スロットを使用してドロップダウンセレクトの左側と右側にテキスト要素を追加することもできます。これらのテキストは、ドロップダウンセレクトがフォーカスされているか値がある場合にのみ表示されます。
API
プロパティ
| HTML 属性 | JavaScript プロパティ | Reflect | 型 | デフォルト値 |
|---|---|---|---|---|
variant | variant | 'filled' | 'outlined' | 'filled' | |
セレクトボックスのスタイルです。次の値を指定します:
| ||||
multiple | multiple | boolean | false | |
複数選択をサポートするかどうかを指定します。 | ||||
name | name | string | '' | |
セレクトボックスの名前です。フォームデータと共に送信されます。 | ||||
value | value | string | string[] | '' | |
セレクトボックスの値です。フォームデータと共に送信されます。
| ||||
defaultValue | string | string[] | '' | ||
デフォルトで選択される値です。フォームをリセットすると、このデフォルト値にリセットされます。この属性はJavaScriptプロパティでのみ設定できます。 | ||||
label | label | string | - | |
ラベルテキストです。 | ||||
placeholder | placeholder | string | - | |
プレースホルダーテキストです。 | ||||
helper | helper | string | - | |
セレクトボックス下部のヘルプテキストです。 | ||||
clearable | clearable | boolean | false | |
セレクトボックスをクリア可能にするかどうかを指定します。 | ||||
clear-icon | clearIcon | string | - | |
セレクトボックスがクリア可能な場合に、右側に表示されるクリアボタンのMaterial Iconsアイコン名です。 | ||||
placement | placement | 'auto' | 'bottom' | 'top' | 'auto' | |
セレクトボックスの配置位置です。次の値を指定します:
| ||||
end-aligned | endAligned | boolean | false | |
テキストを右揃えにするかどうかを指定します。 | ||||
prefix | prefix | string | - | |
セレクトボックスの接頭辞テキストです。フォーカス時、または値がある場合にのみ表示されます。 | ||||
suffix | suffix | string | - | |
セレクトボックスの接尾辞テキストです。フォーカス時、または値がある場合にのみ表示されます。 | ||||
icon | icon | string | - | |
セレクトボックスの接頭辞アイコンのMaterial Iconsアイコン名です。 | ||||
end-icon | endIcon | string | - | |
セレクトボックスの接尾辞アイコンのMaterial Iconsアイコン名です。 | ||||
error-icon | errorIcon | string | - | |
フォームフィールドの検証に失敗した場合に、セレクトボックスの右側に表示されるMaterial Iconsアイコン名です。 | ||||
form | form | string | - | |
関連付ける この属性が指定されていない場合、この要素は | ||||
readonly | readonly | boolean | false | |
読み取り専用状態にするかどうかを指定します。 | ||||
disabled | disabled | boolean | false | |
無効状態にするかどうかを指定します。 | ||||
required | required | boolean | false | |
フォーム送信時に、このフィールドを必須にするかどうかを指定します。 | ||||
validity | ValidityState | - | ||
フォーム検証ステータスを表す | ||||
validationMessage | string | - | ||
フォーム検証に合格しなかった場合、このプロパティにはエラーメッセージが設定されます。検証に合格した場合は空の文字列になります。 | ||||
autofocus | autofocus | boolean | false | |
ページ読み込み完了後、自動的にフォーカスを取得するかどうかを指定します。 | ||||
tabindex | tabIndex | number | - | |
Tab キーによるフォーカス移動時の、要素の順序を指定します。 | ||||
メソッド
| 名前 | パラメーター | 戻り値 |
|---|---|---|
checkValidity | boolean | |
フォームフィールドが検証に合格するかどうかをチェックします。合格しない場合は | ||
reportValidity | boolean | |
フォームフィールドが検証に合格するかどうかをチェックします。合格しない場合は 検証に合格しなかった場合は、コンポーネントに検証失敗のエラーメッセージも表示されます。 | ||
setCustomValidity |
| void |
カスタムのエラーメッセージを設定します。このテキストが空でない限り、フィールドが検証に合格していないと見なされます。 | ||
click | void | |
要素のマウスクリックをシミュレートします。 | ||
focus |
| void |
現在の要素にフォーカスを設定します。 オプションとして、以下のプロパティを持つオブジェクトを渡すことができます:
| ||
blur | void | |
現在の要素からフォーカスを外します。 | ||
Slots
| 名前 |
|---|
| デフォルト |
|
icon |
左側のアイコン |
end-icon |
右側のアイコン |
error-icon |
検証失敗状態の右側のアイコン |
prefix |
左側のテキスト |
suffix |
右側のテキスト |
clear-button |
クリアボタン |
clear-icon |
クリアボタン内のアイコン |
helper |
下部のヘルプテキスト |
CSS Parts
| 名前 |
|---|
chips |
複数選択時に、選択された値に対応するチップを配置するコンテナ |
chip |
複数選択時に、選択された各値に対応するチップ |
chip__button |
チップ内部の |
chip__label |
チップ内部のテキスト |
chip__delete-icon |
チップ内部の削除アイコン |
text-field |
テキストフィールド。つまり |
text-field__container |
text-field 内部のテキストフィールドコンテナ |
text-field__icon |
text-field 内部の左側のアイコン |
text-field__end-icon |
text-field 内部の右側のアイコン |
text-field__error-icon |
text-field 内部の検証失敗状態の右側のアイコン |
text-field__prefix |
text-field 内部の左側のテキスト |
text-field__suffix |
text-field 内部の右側のテキスト |
text-field__label |
text-field 内部のラベルテキスト |
text-field__input |
text-field 内部の |
text-field__clear-button |
text-field 内部のクリアボタン |
text-field__clear-icon |
text-field 内部のクリアボタン内のアイコン |
text-field__supporting |
text-field 内部の下部補助情報コンテナ(helper と error を含む) |
text-field__helper |
text-field 内部の下部ヘルプテキスト |
text-field__error |
text-field 内部の下部エラー説明テキスト |
menu |
ドロップダウンメニュー。つまり |