* [CODE(HTMLe)@en[output]] 要素 (HTML)
[1]
[[HTML]] の [DFN[[CODE(HTMLe)@en[output]] [[要素]]]]は、
[[DOM]] 的には[[フォーム・制御子]]である
[CODE(HTMLe)@en[[[span]]]] [[要素]]のようなものです。
[SRC@en[WF2 2.13]]
[[フォーム]]に[[利用者]]が入力した値から算出した値
(例えば[[電子商取引]]の [[Webサイト]]で[[利用者]]が選択した商品の見積り額)
を挿入する場所として使うことが想定されています。
[2]
:状態:[[WHATWG]] [[WD]]
:[[名前空間URI]]:[CODE(URI)@en[[[http://www.w3.org/1999/xhtml]]]]
:[[要素型名]]:[CODE(HTMLe)@en[[[output]]]]
([Q@en[[[output]]]] ([Q[[[出力]]]]) より)
:文脈:
:[[内容モデル]]:[[行内内容]] (>>5)
:[[開始タグ]]:
:[[終了タグ]]:
:[[属性]]:
[[共通属性]] ([[HTML 4]] [CODE(SGML)@en[%[[attrs]];]])
,属性名,属性値,既定値,説明,状態,出典
,[CODE(HTMLa)@en[[[for]]]],,,,[[WHATWG]] [[WD]],[WF2]
,[CODE(HTMLa)@en[[[form]]]],[CODE(XML)@en[[[IDREFS]]]],(文脈依存),[[フォーム]],[[WHATWG]] [[WD]],[WF2]
,[CODE(HTMLa)@en[[[name]]]],,,,[[WHATWG]] [[WD]],[WF2]
,[CODE(HTMLa)@en[[[onchange]]]],,,,[[WHATWG]] [[WD]],[WF2]
,[CODE(HTMLa)@en[[[onformchange]]]],,,,[[WHATWG]] [[WD]],[WF2]
,[CODE(HTMLa)@en[[[onforminput]]]],,,,[[WHATWG]] [[WD]],[WF2]
[3]
仕様書:
- [[Web Forms 2.0]]
-- [CSECTION@en[2.13. The [CODE(HTMLe)@en[[[output]]]] element]]
-- [CSECTION@en[2.18. Handling unexpected elements and values]]
** 内容
[5] [CODE(HTMLe)@en[[[span]]]] 同様、
任意の[[行内内容]]が認められます。
[SRC@en[WF2 2.13]]
[11] '''[CODE(DOMe)@en[change]] 事象'''
→ [CODE(DOMa)@en[[[value]>>49]]]
[[#comment]]
** フォーム
[4] '''現在値'''
[[内容]]が[[現在値]]です。 [SRC@en[WF2 2.13]]
[6] [[現在値]]は、 [CODE(DOMa)@en[[[value]]]]
[[DOM属性]]により読み書きできます。
[SRC@en[WF2 2.13]]
[7] '''初期値'''
[[初期値]]は、 [CODE(DOMa)@en[[[defaultValue]]]]
[[DOM属性]]の値です。
[SRC@en[WF2 2.13]]
[8] '''成功'''
[CODE(HTMLe)@en[[[output]]]] [[要素]]が[[成功]]することはありません。
[SRC@en[WF2 2.13]]
[9] '''再設定'''
[[フォーム]]を[[再設定]]すると、 [CODE(HTMLe)@en[[[output]]]]
[[要素]]も、 [CODE(DOMa)@en[[[defaultValue]]]]
[[DOM属性]]を用いて[[再設定]]されます。
[SRC@en[WF2 2.13]]
;; [CODE(DOMa)@en[[[defaultValue]]]]
は [CODE(DOM)@en[[[DOMString]]]] なので、
元々[[子要素]]があったとしても、
[[再設定]]すると[[要素]]の構造は消えてしまいます。
[[#comment]]
** 関連
[49] [SRC@en[WF2 2.13]]
- [CODE(HTMLe)@en[[[output]]]] を使うべきなのは次の場合です。
-- [[利用者]]が直接値をいじることがない場合。
-- 値が他の値から得られる場合 (例えば[[合計]])。
-- 値が他の場所で編集できるものと同じ場合
(例えば[[サイト]]の設定頁で変更できる [[FAX番号]]の場合)。
- [CODE(HTMLa)@en[[[readonly]]]] を使うべきなのは、
[[利用者]]が変更するべきではないが、
[[鯖]]に[[提出]]する必要がある
(例えば[[データベース]]の[[記録]]編集時の[[識別子]]の)
[[フォーム制御子]]です。
- [CODE(HTMLa)@en[[[disabled]]]] を使うべきなのは、
[[利用者]]が変更することができず、
[[提出]]もしない[[フォーム制御子]]です。
[[#comment]]
** 例
[10] [SRC@en[WF2 2.13]]
[PRE(HTML example code)[
]PRE]
[[レンダリング]]例
[PRE(aafig)[
+--------+-+ +--------+-+
| 0 |:| * | 0 |:| = 0
+--------+-+ +--------+-+
]PRE]
[[利用者]]がいずれかの入力欄の[[数]]を変更すると、
2つの[[数]]の[[積]]が [CODE(charname)@en[[[EQUAL SIGN]]]]
の右側の [CODE(HTMLe)@en[[[output]]]] [[要素]]内に現れます。
[[#comment]]
** メモ
[[#comment]]
* メモ
[50] [CITE@en[Web Applications 1.0 r7356 Try to be a little looser in