メインコンテンツまでスキップ
バージョン: 1.5.0

MultiChoice

Overview

MultiChoice は、複数選択肢の中から複数の値を選択することができます。


Specification

Property

使用できるプロパティの一覧です。プロパティを指定して値を更新することができます。

NameTypeDefaultDescriptionRemark
classNamestring""コンポーネントの class 名
errorstring""エラーに表示するテキスト未指定、あるいは空文字の場合、error は表示されない
idstring""コンポーネントの id 名
labelstring""コンポーネントの説明ラベル未指定、あるいは空文字の場合、label は表示されない
disabledbooleanfalseコンポーネントの編集可/不可設定
requiredIconbooleanfalseコンポーネントの必須アイコン表示/非表示設定
visiblebooleantrueコンポーネントの表示/非表示設定
itemsArray<Item>[]表示する選択肢一覧items が配列以外の場合、エラーを出力する
Item.labelstringnull各選択肢のテキストItem.label が未指定の場合、UI 上は Item.value の値が表示される
Item.valuestringnull各選択肢の値Item.value に重複の値を指定できる
value *1Array<string>[]選択されている値value と selectedIndex が未指定の場合、何も選択されない
重複する value を指定し、selectedIndex を指定しない場合、Item.value で最初にマッピングされた value の項目が選択され、selectedIndex にはその選択肢のインデックス番号が入る
value が配列以外の場合、エラーを出力する
selectedIndex *1Array<Number>[]選択されている値のインデックス番号items 内に重複する Item.value がある場合、どの Item.value が選択されるか指定するためのプロパティ
value が未指定で、selectedIndex に有効な値が指定されている場合、 そのインデックス番号の選択肢が選択される
value に重複した Item.value が指定され、selectedIndex の値が value 内の重複した Item.value とマッピングした場合、そのインデックス番号の選択肢が選択される
備考

*1: value と Item.value に重複した値を指定できる。重複した値を指定する場合、value と selectedIndex プロパティを使って制御することができる。
例: items = [{label: 'Orange', value: 'fruit'}, {label: 'Apple', value: 'fruit'}, {label: 'Carrot', value: 'vegetable'}, {label: 'Lemon', value: 'fruit'}] を指定する

  • 以下のように value を指定、selectedIndex を未指定の場合:

    • value = ['fruit', 'vegetable']: 最初と 3番目の値が選択される。
    • value = ['meat', 'other']: 何も選択されない。
  • 以下のように value を未指定、selectedIndex を指定する場合:

    • selectedIndex = [0, 1]: 最初と 2番目の値が選択される。
    • selectedIndex = [98, 99]: 何も選択されない。
  • 以下のように value と selectedIndex を指定する場合:

    • value = ['fruit', 'vegetable'], selectedIndex = [1, 3]: 2番目と 3番目の値が選択される。
    • value = ['fruit', 'fruit', 'vegetable'], selectedIndex = [1, 3]: 2番目と 3番目と 4番目の値が選択される。
    • value = ['fruit', 'fruit'], selectedIndex = [1, 2, 3]: 最初と 2番目の値が選択される。
      ※ value と selectedIndex が同時に指定された場合、value の値が優先される。よって、上記の 1つ目と 3つ目の例において selectedIndex の 3 に当たる item は選択されない。

Event

指定できるイベントの一覧です。

NameTypeDescriptionRemark
changefunction値が変更された時のイベントハンドラ引数には Event の event オブジェクトをとる

event.detail で以下の値を受け取ることができる
event.detail.oldValue : 変更前の value の値
event.detail.value : 変更後の value の値

Constructor

MultiChoice(options)
使用できるコンストラクタの一覧です。

Parameter

NameTypeDefaultDescriptionRemark
optionsobject{}コンポーネントのプロパティを含むオブジェクト

Sample Code

ヒント

導入と実装方法 をご確認ください。

全てのパラメータを指定した場合のサンプルコードです。

const Kuc = Kucs['1.x.x'];

const space = kintone.app.record.getSpaceElement('space');

const multiChoice = new Kuc.MultiChoice({
label: 'Fruit',
requiredIcon: true,
items: [
{
label: 'orange',
value: 'Orange'
},
{
label: 'apple',
value: 'Apple'
}
],
value: ['Orange'],
selectedIndex: [0],
error: 'Error occurred!',
className: 'options-class',
id: 'options-id',
visible: true,
disabled: false
});
space.appendChild(multiChoice);

multiChoice.addEventListener('change', event => {
console.log(event);
});