入力/フォーム要素 Vueコンポーネント
フォーム要素を使うと、柔軟で美しいフォームのレイアウトを作ることができます。フォームエレメントは、よく知られているリストビュー(リストとリストアイテムのVueコンポーネント)と同じですが、いくつかの追加コンポーネントがあります。
Framework7の入力/フォーム要素を見てみると、その姿が見えてきます。
入力コンポーネント
以下のコンポーネントが含まれています。
f7-list-input
- リストアイテムの入力要素f7-input
- 入力要素
入力のプロパティ
Prop | Type | Default | Description |
---|---|---|---|
<f7-list-input> properties | |||
media | string | リストアイテムのメディアイメージのURL | |
label | string | 入力のラベルテキスト | |
inline-label | boolean | false | ラベルのインライン化 |
floating-label | boolean | false | フローティングラベルを有効にする |
outline | boolean | false | 入力のアウトライン化 |
input | boolean | true | 入力要素をレンダリングするかどうか。内部でカスタム入力を使用したい場合は無効にします。 |
type | string | 入力タイプ。すべてのデフォルトの HTML5 入力タイプと、いくつかの特別なタイプがあります。
| |
resizable | boolean | false | テキストエリアのサイズを変更する |
inputStyle | string object | 入力の "style "属性の値(追加のスタイルを渡す必要がある場合に備えて | |
clear-button | boolean | false | クリックすると入力値がクリアされる入力クリアボタンを追加 |
validate | boolean | false | この機能を有効にすると、入力値の変更時に、渡された「パターン」または入力タイプに基づいて検証されます。カスタムバリデーションを使用していて、エラーメッセージの表示/非表示をより細かく制御する必要がある場合には、バリデーションを無効にして、error-message と error-message-force プロップスを併用するとよいでしょう。 |
validate-on-blur | boolean | false | 有効にすると、入力はblurのみで検証されます。 |
onValidate | function | 入力検証時に実行されるコールバックは、入力が有効かどうかを示すブール値を返します。
| |
error-message | string | 入力値が無効なときに表示するカスタムエラーメッセージ | |
error-message-force | boolean | false | エラーメッセージを強制的に表示します。カスタムバリデーションを使用していて、必要に応じてエラーメッセージを表示/非表示にしたい場合に便利です。 |
info | string | 入力に関する情報のカスタム追加テキスト | |
name | string | 入力名 | |
placeholder | string | 入力のプレースホルダー | |
id | string | 折り返し要素のID属性 | |
input-id | string | 入力要素のID属性 | |
value | string number array object | 入力の値。 type="datepicker" type="colorpicker" type="texteditor"`の場合、値はHTML文字列でなければなりません。 | |
inputmode | string | 入力のネイティブな "inputmode "属性の値 | |
size | string number | 入力のネイティブな "size "属性の値 | |
pattern | string | 入力のネイティブな "pattern "属性の値 | |
accept | string number | 入力に固有の "accept "属性の値 | |
autocomplete | string | 入力のネイティブ "autocomplete "属性の値 | |
autofocus | boolean | false | Value of the input's native "autofocus" attribute (日本語) |
autosave | string | 入力固有の "autosave "属性の値 | |
disabled | boolean | false | 入力を無効にする |
max | string number | 入力のネイティブ "max "属性の値 | |
min | string number | 入力のネイティブの "min "属性の値 | |
step | string number | 入力のネイティブ "step "属性の値 | |
maxlength | string number | 入力のネイティブ "maxlength "属性の値 | |
minlength | string number | input's native "minlength "属性の値 | |
multiple | boolean | false | 入力固有の "multiple "属性の値 |
readonly | boolean | false | 入力をリードオンリーとしてマークする |
required | boolean | false | 入力を必須としてマークする |
tabindex | string number | 入力のネイティブ "tabindex "属性の値 | |
no-store-data | boolean | false | Form Storageで使用する際に、入力値を無視して保存できるようにする。 |
ignore-store-data | boolean | false | 以前と同じ |
wrap | boolean | true | 有効にすると、<li> 要素で囲まれます。 |
calendar-params | object | カレンダーのパラメータを持つオブジェクトで、type="datepicker" のときに使用されます。 | |
color-picker-params | object | type="colorpicker"`の場合に使用されるカラーピッカーのパラメーターを持つオブジェクト。 | |
text-editor-params | object | type="texteditor"`の場合に使用されるテキストエディタのパラメータを持つオブジェクト。 | |
<f7-input> properties | |||
outline | boolean | false | 入力をアウトライン化する |
wrap | boolean | true | 入力を <div class="input"> 要素でラップするかどうかを定義します。 |
type | string | 入力タイプ。すべてのデフォルトの HTML5 入力タイプと、いくつかの特別なタイプがあります。
| |
resizable | boolean | false | テキストエリアのサイズを変更する |
inputStyle | string object | 入力の "style "属性の値(追加のスタイルを渡す必要がある場合に備えて | |
clear-button | boolean | false | クリックすると入力値がクリアされる入力クリアボタンを追加 |
validate | boolean | false | この機能を有効にすると、入力値の変更時に、渡された「パターン」または入力タイプに基づいて検証されます。カスタムバリデーションを使用していて、エラーメッセージの表示/非表示をより細かく制御する必要がある場合には、バリデーションを無効にして、error-message と error-message-force プロップスを併用するとよいでしょう。 |
validate-on-blur | boolean | false | 有効にすると、入力はblurのみで検証されます。 |
onValidate | function | 入力検証時に実行されるコールバックは、入力が有効かどうかを示すブール値を返します。
| |
error-message | string | 入力値が無効なときに表示するカスタムエラーメッセージ | |
error-message-force | boolean | false | エラーメッセージを強制的に表示します。カスタムバリデーションを使用していて、必要に応じてエラーメッセージを表示/非表示にしたい場合に便利です。 |
info | string | 入力に関する情報のカスタム追加テキスト | |
name | string | 入力名 | |
placeholder | string | 入力のプレースホルダー | |
id | string | 折り返し要素のID属性 | |
input-id | string | 入力要素のID属性 | |
value | string number | 入力の値。 type="datepicker" type="colorpicker" type="texteditor"`の場合、値はHTML文字列でなければなりません。 | |
inputmode | string | 入力のネイティブな "inputmode "属性の値 | |
size | string number | 入力のネイティブな "size "属性の値 | |
pattern | string | 入力のネイティブな "pattern "属性の値 | |
accept | string number | 入力に固有の "accept "属性の値 | |
autocomplete | string | 入力のネイティブ "autocomplete "属性の値 | |
autofocus | boolean | false | Value of the input's native "autofocus" attribute (日本語) |
autosave | string | 入力固有の "autosave "属性の値 | |
checked | boolean | false | 入力をチェック済みとしてマークする |
disabled | boolean | false | 入力を無効にするマーク |
max | string number | 入力のネイティブ "max "属性の値 | |
min | string number | 入力固有の "min "属性の値 | |
step | string number | 入力固有の "step "属性の値 | |
maxlength | string number | 入力のネイティブ "maxlength "属性の値 | |
minlength | string number | input's native "minlength "属性の値 | |
multiple | boolean | false | 入力固有の "multiple "属性の値 |
readonly | boolean | false | 入力をリードオンリーとしてマークする |
required | boolean | false | 入力を必須としてマークする |
tabindex | string number | 入力のネイティブ "tabindex "属性の値 | |
no-store-data | boolean | false | Form Storageで使用する際に、入力値を無視して保存できるようにする。 |
ignore-store-data | boolean | false | 従来と同じ |
calendar-params | object | Calendar Parametersを持つオブジェクトで、type="datepicker" の時に使用されます。 | |
color-picker-params | object | type="colorpicker"`の場合に使用されるカラーピッカーのパラメーターを持つオブジェクト。 | |
text-editor-params | object | type="texteditor"`の場合に使用されるテキストエディタのパラメータを持つオブジェクト。 |
入力イベント
Event | Arguments | Description |
---|---|---|
<f7-list-input>, <f7-input> events | ||
focus | (event) | ユーザーが入力にフォーカスしたときに発生します。 |
blur | (event) | ユーザーが入力にフォーカスしていないときに発生します。 |
input | (event) | 入力値が変更されたときに直ちに発生します。注意:入力イベントは、beforeinput、keypress、keyup、keydownイベントの後に発生します。 |
change | (event) | 値が変更された場合、blurで発生します。 |
input:clear | (event) | 入力のクリアボタンがクリックされたときに発生します。 |
textarea:resize | (event) | サイズ変更可能なテキストエリアのサイズが変更された場合に発生します。event.detail には、 initialHeight、 currentHeight、 scrollHeight` プロパティを持つオブジェクトが含まれます。 |
input:empty | (event) | 入力値が空になったときに発生するイベント |
input:notempty | (event) | 入力値が空でなくなったときに発生 |
calendar:change | (value) | type="datepicker"` カレンダーの値が変更されたときに発行されます。引数として、選択された日付の配列を受け取ります。 |
colorpicker:change | (value) | type="colorpicker"` カラーピッカーの値が変更されたときに実行される。引数として、カラーピッカーの値を格納したオブジェクトを受け取ります。 |
texteditor:change | (value) | type="texteditor"` テキストエディタの値が変更された時に実行されます。引数として、テキストエディタの値(HTML文字列)を受け取ります。 |
入力スロット
<f7-list-input>
には、カスタムエレメント用の追加スロットがあります。
default
-type="select"
またはtype="textarea"
の場合、要素はselect
またはtextarea
タグの内側に配置されます。info
- 要素は情報メッセージとともにコンテナに挿入されます。error-message
- エラーメッセージを含むコンテナに挿入される要素です。label
- コンテナに挿入される要素で、入力のラベルが表示されます。input
- 入力要素の代わりに要素が挿入されます (input
のプロップはfalse
にも設定する必要があります)root-start
- 要素が<li>
要素の先頭に挿入されます。root
/root-end
- 要素は<li>
要素の最後に挿入されます。content-start
- 要素が<div class="item-content">
要素の先頭に挿入されます。content
/content-end
- 要素は<div class="item-content">
要素の最後に挿入されます。inner-start
-` 要素の先頭に挿入されます。inner
/inner-end
- 要素は、` 要素の最後に挿入されます。media
-` 要素の内部に挿入されます。入力モデル
f7-list-input
とf7-input
のVueコンポーネントは、value
のpropにv-model
をサポートしています。<template> <p>Name is {{ name }}</p> <p>Email is {{ email }}</p> ... <f7-list-input label="Name" type="text" placeholder="Your name" clear-button v-model:value="name" /> <f7-input type="text" placeholder="Your email" clear-button v-model:value="email" /> ... </template> <script> export default { data() { name: '', email: '', }, ... }; </script>
Examples
フルレイアウト/インラインラベル
<f7-list inline-labels no-hairlines-md> <f7-list-input label="Name" type="text" placeholder="Your name" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Password" type="password" placeholder="Your password" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="E-mail" type="email" placeholder="Your e-mail" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="URL" type="url" placeholder="URL" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Phone" type="tel" placeholder="Your phone number" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Gender" type="select" value="Male" placeholder="Please choose..." > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> <option value="Male">Male</option> <option value="Female">Female</option> </f7-list-input> <f7-list-input label="Birthday" type="date" value="2014-04-30" placeholder="Please choose..." > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Date time" type="datetime-local" placeholder="Please choose..." > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Range" :input="false" > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> <f7-range slot="input" :value="50" :min="0" :max="100" :step="1"></f7-range> </f7-list-input> <f7-list-input label="Textarea" type="textarea" placeholder="Bio" > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Resizable" type="textarea" resizable placeholder="Bio" > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> </f7-list>
フルレイアウト / スタック式ラベル
<f7-list no-hairlines-md> <f7-list-input label="Name" type="text" placeholder="Your name" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Password" type="password" placeholder="Your password" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="E-mail" type="email" placeholder="Your e-mail" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="URL" type="url" placeholder="URL" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Phone" type="tel" placeholder="Your phone number" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Gender" type="select" value="Male" placeholder="Please choose..." > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> <option value="Male">Male</option> <option value="Female">Female</option> </f7-list-input> <f7-list-input label="Birthday" type="date" value="2014-04-30" placeholder="Please choose..." > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Date time" type="datetime-local" placeholder="Please choose..." > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Range" :input="false" > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> <f7-range slot="input" :value="50" :min="0" :max="100" :step="1"></f7-range> </f7-list-input> <f7-list-input label="Textarea" type="textarea" placeholder="Bio" > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Resizable" type="textarea" resizable placeholder="Bio" > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> </f7-list>
日付ピッカー
<f7-list no-hairlines-md> <f7-list-input label="Default setup" type="datepicker" placeholder="Your birth date" readonly ></f7-list-input> <f7-list-input label="Custom date format" type="datepicker" placeholder="Select date" readonly :calendar-params="{dateFormat: 'DD, MM dd, yyyy'}" ></f7-list-input> <f7-list-input label="Multiple Values" type="datepicker" placeholder="Select multiple dates" readonly :calendar-params="{ dateFormat: 'M dd yyyy', multiple: true }" ></f7-list-input> <f7-list-input label="Range Picker" type="datepicker" placeholder="Select date range" readonly :calendar-params="{ dateFormat: 'M dd yyyy', rangePicker: true }" ></f7-list-input> <f7-list-input label="Open in Modal" type="datepicker" placeholder="Select date" readonly :calendar-params="{openIn: 'customModal', header: true, footer: true, dateFormat: 'MM dd yyyy'}" ></f7-list-input> </f7-list>
カラーピッカー
<f7-list no-hairlines-md> <f7-list-input type="colorpicker" label="Color Wheel" placeholder="Color" readonly :value="{ hex: '#00ff00' }" ></f7-list-input> <f7-list-input type="colorpicker" label="Saturation-Brightness Spectrum" placeholder="Color" readonly :value="{ hex: '#ff0000' }" :color-picker-params="{ modules: ['sb-spectrum', 'hue-slider'], }" ></f7-list-input> <f7-list-input type="colorpicker" label="RGB Sliders" placeholder="Color" readonly :value="{ hex: '#0000ff' }" :color-picker-params="{ modules: ['rgb-sliders'], sliderValue: true, sliderLabel: true, }" ></f7-list-input> <f7-list-input type="colorpicker" label="RGBA Sliders" placeholder="Color" readonly :value="{ hex: '#ff00ff' }" :color-picker-params="{ modules: ['rgb-sliders', 'alpha-slider'], sliderValue: true, sliderLabel: true, formatValue(value) { return `rgba(${value.rgba.join(', ')})`; }, }" ></f7-list-input> <f7-list-input type="colorpicker" label="HSB Sliders" placeholder="Color" readonly :value="{ hex: '#00ff00' }" :color-picker-params="{ modules: ['hsb-sliders'], sliderValue: true, sliderLabel: true, formatValue(value) { return `hsb(${value.hsb[0]}, ${value.hsb[1] * 1000 / 10}%, ${value.hsb[2] * 1000 / 10}%)` }, }" ></f7-list-input> <f7-list-input type="colorpicker" label="RGB Bars" placeholder="Color" readonly :value="{ hex: '#0000ff' }" :color-picker-params="{ modules: ['rgb-bars'], openIn: 'auto', barValue: true, barLabel: true, formatValue(value) { return `rgb(${value.rgb.join(', ')})`; }, }" ></f7-list-input> <f7-list-input type="colorpicker" label="RGB Sliders + Colors" placeholder="Color" readonly :value="{ hex: '#ffff00' }" :color-picker-params="{ modules: ['initial-current-colors', 'rgb-sliders'], sliderValue: true, sliderLabel: true, formatValue(value) { return `rgb(${value.rgb.join(', ')})`; }, }" ></f7-list-input> <f7-list-input type="colorpicker" label="Palette" placeholder="Color" readonly :value="{ hex: '#FFEBEE' }" :color-picker-params="{ modules: ['palette'], openIn: 'auto', openInPhone: 'sheet', palette: [ ['#FFEBEE', '#FFCDD2', '#EF9A9A', '#E57373', '#EF5350', '#F44336', '#E53935', '#D32F2F', '#C62828', '#B71C1C'], ['#F3E5F5', '#E1BEE7', '#CE93D8', '#BA68C8', '#AB47BC', '#9C27B0', '#8E24AA', '#7B1FA2', '#6A1B9A', '#4A148C'], ['#E8EAF6', '#C5CAE9', '#9FA8DA', '#7986CB', '#5C6BC0', '#3F51B5', '#3949AB', '#303F9F', '#283593', '#1A237E'], ['#E1F5FE', '#B3E5FC', '#81D4FA', '#4FC3F7', '#29B6F6', '#03A9F4', '#039BE5', '#0288D1', '#0277BD', '#01579B'], ['#E0F2F1', '#B2DFDB', '#80CBC4', '#4DB6AC', '#26A69A', '#009688', '#00897B', '#00796B', '#00695C', '#004D40'], ['#F1F8E9', '#DCEDC8', '#C5E1A5', '#AED581', '#9CCC65', '#8BC34A', '#7CB342', '#689F38', '#558B2F', '#33691E'], ['#FFFDE7', '#FFF9C4', '#FFF59D', '#FFF176', '#FFEE58', '#FFEB3B', '#FDD835', '#FBC02D', '#F9A825', '#F57F17'], ['#FFF3E0', '#FFE0B2', '#FFCC80', '#FFB74D', '#FFA726', '#FF9800', '#FB8C00', '#F57C00', '#EF6C00', '#E65100'], ], formatValue(value) { return value.hex; }, }" ></f7-list-input> <f7-list-input type="colorpicker" label="Pro Mode" placeholder="Color" readonly :value="{ hex: '#00ffff' }" :color-picker-params="{ modules: ['initial-current-colors', 'sb-spectrum', 'hsb-sliders', 'rgb-sliders', 'alpha-slider', 'hex', 'palette'], openIn: 'auto', sliderValue: true, sliderValueEditable: true, sliderLabel: true, hexLabel: true, hexValueEditable: true, groupedModules: true, palette: [ ['#FFEBEE', '#FFCDD2', '#EF9A9A', '#E57373', '#EF5350', '#F44336', '#E53935', '#D32F2F', '#C62828', '#B71C1C'], ['#F3E5F5', '#E1BEE7', '#CE93D8', '#BA68C8', '#AB47BC', '#9C27B0', '#8E24AA', '#7B1FA2', '#6A1B9A', '#4A148C'], ['#E8EAF6', '#C5CAE9', '#9FA8DA', '#7986CB', '#5C6BC0', '#3F51B5', '#3949AB', '#303F9F', '#283593', '#1A237E'], ['#E1F5FE', '#B3E5FC', '#81D4FA', '#4FC3F7', '#29B6F6', '#03A9F4', '#039BE5', '#0288D1', '#0277BD', '#01579B'], ['#E0F2F1', '#B2DFDB', '#80CBC4', '#4DB6AC', '#26A69A', '#009688', '#00897B', '#00796B', '#00695C', '#004D40'], ['#F1F8E9', '#DCEDC8', '#C5E1A5', '#AED581', '#9CCC65', '#8BC34A', '#7CB342', '#689F38', '#558B2F', '#33691E'], ['#FFFDE7', '#FFF9C4', '#FFF59D', '#FFF176', '#FFEE58', '#FFEB3B', '#FDD835', '#FBC02D', '#F9A825', '#F57F17'], ['#FFF3E0', '#FFE0B2', '#FFCC80', '#FFB74D', '#FFA726', '#FF9800', '#FB8C00', '#F57C00', '#EF6C00', '#E65100'], ], formatValue(value) { return `rgba(${value.rgba.join(', ')})`; }, }" ></f7-list-input> </f7-list>
フローティングラベル
<f7-list no-hairlines-md> <f7-list-input label="Name" floating-label type="text" placeholder="Your name" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Password" floating-label type="password" placeholder="Your password" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="E-mail" floating-label type="email" placeholder="Your e-mail" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="URL" floating-label type="url" placeholder="URL" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Phone" floating-label type="tel" placeholder="Your phone number" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Resizable" floating-label type="textarea" resizable placeholder="Bio" > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> </f7-list>
フローティングラベル+アウトライン入力
<f7-list no-hairlines-md> <f7-list-input outline label="Name" floating-label type="text" placeholder="Your name" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input outline label="Password" floating-label type="password" placeholder="Your password" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input outline label="E-mail" floating-label type="email" placeholder="Your e-mail" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input outline label="URL" floating-label type="url" placeholder="URL" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input outline label="Phone" floating-label type="tel" placeholder="Your phone number" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input outline label="Bio" floating-label type="textarea" resizable placeholder="Bio" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> </f7-list>
バリデーション+追加情報
<f7-list no-hairlines-md> <f7-list-input label="Name" type="text" placeholder="Your name" info="Default validation" required validate clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Fruit" type="text" placeholder="Type 'apple' or 'banana'" required validate pattern="apple|banana" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> <span slot="info">Pattern validation (<b>apple|banana</b>)</span> </f7-list-input> <f7-list-input label="E-mail" type="email" placeholder="Your e-mail" info="Default e-mail validation" required validate clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="URL" type="url" placeholder="Your URL" info="Default URL validation" required validate clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input label="Number" type="text" placeholder="Enter number" info="With custom error message" error-message="Only numbers please!" required validate pattern="[0-9]*" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> </f7-list>
アイコンと入力
<f7-list no-hairlines-md> <f7-list-input type="text" placeholder="Your name" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input type="password" placeholder="Your password" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input type="email" placeholder="Your e-mail" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> <f7-list-input type="url" placeholder="URL" clear-button > <f7-icon icon="demo-list-icon" slot="media"></f7-icon> </f7-list-input> </f7-list>
ラベル+入力
<f7-list no-hairlines-md> <f7-list-input label="Name" type="text" placeholder="Your name" clear-button ></f7-list-input> <f7-list-input label="Password" type="password" placeholder="Your password" clear-button ></f7-list-input> <f7-list-input label="E-mail" type="email" placeholder="Your e-mail" clear-button ></f7-list-input> <f7-list-input label="URL" type="url" placeholder="URL" clear-button ></f7-list-input> </f7-list>
入力のみ
<f7-list no-hairlines-md> <f7-list-input type="text" placeholder="Your name" clear-button ></f7-list-input> <f7-list-input type="password" placeholder="Your password" clear-button ></f7-list-input> <f7-list-input type="email" placeholder="Your e-mail" clear-button ></f7-list-input> <f7-list-input type="url" placeholder="URL" clear-button ></f7-list-input> </f7-list>
入力+付加情報
<f7-list no-hairlines-md> <f7-list-input type="text" placeholder="Your name" info="Full name please" clear-button ></f7-list-input> <f7-list-input type="password" placeholder="Your password" info="8 characters minimum" clear-button ></f7-list-input> <f7-list-input type="email" placeholder="Your e-mail" info="Your work e-mail address" clear-button ></f7-list-input> <f7-list-input type="url" placeholder="URL" info="Your website URL" clear-button ></f7-list-input> </f7-list>
インプットのみ インセット
<f7-list inset> <f7-list-input type="text" placeholder="Your name" clear-button ></f7-list-input> <f7-list-input type="password" placeholder="Your password" clear-button ></f7-list-input> <f7-list-input type="email" placeholder="Your e-mail" clear-button ></f7-list-input> <f7-list-input type="url" placeholder="URL" clear-button ></f7-list-input> </f7-list>