プロパティリファレンス
このページでは、md2formで使用できるすべてのプロパティについて詳しく説明します。プロパティは質問タイプごとに使用可能なものが異なります。
共通プロパティ
すべての質問タイプで使用できるプロパティです。
type
必須プロパティ
質問の種類を指定します。
#type short_text指定可能な値:
short_text,long_text,number,email,phonedropdown,radio,checkboxdate,timerating,likert,matrix,scalefile_upload,signatureimage,videoboolean,section_header
required
質問への回答を必須にするかどうかを指定します。
#required true
#required falseデフォルト値: false
適用される質問タイプ: すべて(section_header, image, videoを除く)
visible
質問の表示/非表示を制御します。
#visible true
#visible falseデフォルト値: true
適用される質問タイプ: すべて
テキスト入力系プロパティ
placeholder
入力フィールドに表示するプレースホルダーテキストを指定します。
#placeholder "山田 太郎"
#placeholder "ここに入力してください"適用される質問タイプ: short_text, long_text, number, email, phone
maxLength
入力可能な最大文字数を指定します。
#maxLength 100
#maxLength 500適用される質問タイプ: short_text, long_text
default
デフォルト値を指定します。
#default "デフォルトテキスト"
#default 25適用される質問タイプ: short_text, long_text, number, email, phone, 選択系
数値入力系プロパティ
min
入力可能な最小値を指定します。
#min 0
#min -100適用される質問タイプ: number, scale
max
入力可能な最大値を指定します。
#max 120
#max 100適用される質問タイプ: number, scale
step
数値の刻み幅を指定します。
#step 1
#step 0.5
#step 5適用される質問タイプ: number, scale
integerOnly
整数のみの入力を許可するかどうかを指定します。
#integerOnly true
#integerOnly falseデフォルト値: false
適用される質問タイプ: number
選択系プロパティ
options
選択肢のリストを指定します。カンマ区切りで複数の選択肢を指定できます。
#options "選択肢1","選択肢2","選択肢3"
#options "東京都","大阪府","愛知県"適用される質問タイプ: dropdown, radio, checkbox
allowOther
「その他」選択肢を追加するかどうかを指定します。
#allowOther true
#allowOther falseデフォルト値: false
適用される質問タイプ: dropdown, radio
searchable
ドロップダウンで検索機能を有効にするかどうかを指定します。
#searchable true
#searchable falseデフォルト値: false
適用される質問タイプ: dropdown
minSelected
チェックボックスで最小選択数を指定します。
#minSelected 1
#minSelected 2適用される質問タイプ: checkbox
maxSelected
チェックボックスで最大選択数を指定します。
#maxSelected 3
#maxSelected 5適用される質問タイプ: checkbox
日時系プロパティ
includeTime
日付選択で時刻も含めるかどうかを指定します。
#includeTime true
#includeTime falseデフォルト値: false
適用される質問タイプ: date
minDate
選択可能な最小日付をISO形式で指定します。
#minDate "2024-01-01"
#minDate "1900-01-01"適用される質問タイプ: date
maxDate
選択可能な最大日付をISO形式で指定します。
#maxDate "2024-12-31"
#maxDate "2030-12-31"適用される質問タイプ: date
minTime
選択可能な最小時刻を「HH:MM」形式で指定します。
#minTime "09:00"
#minTime "08:30"適用される質問タイプ: time
maxTime
選択可能な最大時刻を「HH:MM」形式で指定します。
#maxTime "18:00"
#maxTime "22:30"適用される質問タイプ: time
stepMinutes
時刻選択の刻み幅を分単位で指定します。
#stepMinutes 15
#stepMinutes 30
#stepMinutes 60デフォルト値: 15
適用される質問タイプ: time
評価・スケール系プロパティ
scale
評価の段階数を指定します。
#scale 5
#scale 10デフォルト値: 5
適用される質問タイプ: rating
labels
評価の最低・最高のラベルを指定します。
#labels "不満","とても満足"
#labels "低い","高い"適用される質問タイプ: rating
icon
評価に使用するアイコンを指定します。
#icon star
#icon heart
#icon circleデフォルト値: star
適用される質問タイプ: rating
statements
リッカート尺度の評価項目(行)を指定します。
#statements "項目1","項目2","項目3"
#statements "商品の品質","価格の妥当性","スタッフの対応"適用される質問タイプ: likert
scaleLabels
リッカート尺度の評価尺度(列)を指定します。
#scaleLabels "全くそう思わない","そう思わない","普通","そう思う","とてもそう思う"
#scaleLabels "悪い","やや悪い","普通","やや良い","良い"適用される質問タイプ: likert
requiredPerStatement
リッカート尺度で各項目の評価を必須にするかどうかを指定します。
#requiredPerStatement true
#requiredPerStatement falseデフォルト値: false
適用される質問タイプ: likert
rows
マトリクスの行ラベルを指定します。
#rows "月曜日","火曜日","水曜日","木曜日","金曜日"
#rows "商品A","商品B","商品C"適用される質問タイプ: matrix
columns
マトリクスの列ラベルを指定します。
#columns "午前","午後","夜"
#columns "満足","普通","不満"適用される質問タイプ: matrix
cellType
マトリクスのセルタイプを指定します。
#cellType radio
#cellType checkbox
#cellType number
#cellType short_textデフォルト値: radio
適用される質問タイプ: matrix
requiredPerRow
マトリクスで各行の入力を必須にするかどうかを指定します。
#requiredPerRow true
#requiredPerRow falseデフォルト値: false
適用される質問タイプ: matrix
minLabel
スケールの最小値のラベルを指定します。
#minLabel "初心者"
#minLabel "低い"適用される質問タイプ: scale
maxLabel
スケールの最大値のラベルを指定します。
#maxLabel "上級者"
#maxLabel "高い"適用される質問タイプ: scale
ファイル・署名系プロパティ
allowedTypes
アップロード可能なファイル形式を指定します。
#allowedTypes "pdf","docx","jpg","png"
#allowedTypes "pdf","doc"適用される質問タイプ: file_upload
maxFiles
アップロード可能な最大ファイル数を指定します。
#maxFiles 1
#maxFiles 5デフォルト値: 1
適用される質問タイプ: file_upload
maxSizeMB
アップロード可能な最大ファイルサイズをMB単位で指定します。
#maxSizeMB 10
#maxSizeMB 50デフォルト値: 10
適用される質問タイプ: file_upload
captureMode
署名の入力方法を指定します。
#captureMode draw
#captureMode type
#captureMode uploadデフォルト値: draw
適用される質問タイプ: signature
メディア系プロパティ
src
画像や動画のURLを指定します。
#src "https://example.com/image.jpg"
#src "https://example.com/video.mp4"適用される質問タイプ: image, video
alt
画像の代替テキストを指定します。
#alt "商品の写真"
#alt "説明図"適用される質問タイプ: image
width
メディアの幅を指定します。
#width 300
#width auto適用される質問タイプ: image, video
height
メディアの高さを指定します。
#height 200
#height auto適用される質問タイプ: image, video
caption
メディアのキャプションを指定します。
#caption "商品イメージ"
#caption "操作方法の説明動画"適用される質問タイプ: image, video
その他のプロパティ
onLabel
boolean型のTrue(オン)の場合のラベルを指定します。
#onLabel "はい"
#onLabel "希望する"デフォルト値: "はい"
適用される質問タイプ: boolean
offLabel
boolean型のFalse(オフ)の場合のラベルを指定します。
#offLabel "いいえ"
#offLabel "希望しない"デフォルト値: "いいえ"
適用される質問タイプ: boolean
title
セクションヘッダーのメインタイトルを指定します。
#title "重要事項"
#title "個人情報の取り扱い"適用される質問タイプ: section_header
subtitle
セクションヘッダーのサブタイトルを指定します。
#subtitle "以下の内容をよくお読みください"
#subtitle "必須項目です"適用される質問タイプ: section_header
特別なプロパティ記法
配列値の指定
カンマ区切りで複数の値を指定します。値にカンマが含まれる場合は、適切にエスケープしてください。
# 基本的な配列
#options "選択肢1","選択肢2","選択肢3"
# 値にカンマが含まれる場合
#options "東京都, 首都圏","大阪府, 関西圏","愛知県, 中部圏"ラベルペアの指定
2つの値をペアで指定する場合(例:labels):
#labels "最低","最高"
#labels "不満","満足"プロパティ使用時の注意点
1. プロパティ名の大文字小文字
プロパティ名は小文字で統一してください:
# ❌ 間違い
#Type short_text
#Required true
#MaxLength 100
# ✅ 正しい
#type short_text
#required true
#maxLength 1002. クォートの使用
文字列値は必ずダブルクォートで囲んでください:
# ❌ 間違い
#placeholder 入力してください
#options 選択肢1,選択肢2
# ✅ 正しい
#placeholder "入力してください"
#options "選択肢1","選択肢2"3. 真偽値の指定
真偽値は true または false で指定してください:
# ❌ 間違い
#required yes
#visible 1
# ✅ 正しい
#required true
#visible false4. 数値の指定
数値は数字のみで指定してください(クォート不要):
# ❌ 間違い
#min "0"
#max "100"
# ✅ 正しい
#min 0
#max 1005. サポートされていないプロパティ
質問タイプがサポートしていないプロパティは無視されます。例えば:
### 数値入力
#type number
#placeholder "数値を入力" # 有効
#options "1","2","3" # 無視される(numberタイプではoptionsは無効)プロパティの優先順位
同じプロパティが複数回指定された場合、最後の指定が有効になります:
### 質問
#type short_text
#required false
#required true # この値が有効質問タイプ別プロパティ対応表
| プロパティ | short_text | long_text | number | phone | dropdown | radio | checkbox | date | time | rating | likert | matrix | scale | file_upload | signature | image | video | boolean | section_header | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| required | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | - | ✓ | - |
| visible | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| placeholder | ✓ | ✓ | ✓ | ✓ | ✓ | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| maxLength | ✓ | ✓ | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| default | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | - | ✓ | - | - | - | - | ✓ | - |
(その他のプロパティも同様に対応表で確認できます)
次のステップ
プロパティを理解したら、以下のページでより詳細な情報を確認してください:
- フロントマター設定 - フォーム全体の設定オプション
- 実装例 - 実際の使用例とベストプラクティス
- 型定義 - TypeScript型定義の詳細
- API リファレンス - 関数とクラスの詳細