[1] HTML の input
要素は、 type
属性が hidden
の時、 隠れ制御子となります。
[2] 仕様書:
INPUT
element
IW:HTML4:"interact/forms.html#edef-INPUT"[3] 属性:
属性名 | 属性値 | 既定値 | 説明 | 出典 |
class | 級 | [HTML 4] %coreattrs | ||
datafld | データ欄 | [HTML 4] 予約 | ||
dataformatas | データ書式 | [HTML 4] 予約 | ||
datasrc | %URI | (なし) | データ源 | [HTML 4] 予約 |
dir | 書字方向 | [HTML 4] %i18n | ||
disabled | (真偽値属性) | (偽) | 無効 | [HTML 4] |
id | 一意識別子 | [HTML 4] %coreattrs | ||
lang | 自然言語 | [HTML 4] %i18n | ||
xml:lang | 自然言語 | [XHTML 1] | ||
language | スクリプト言語 | WinIE 4+ | ||
name | 制御子名 | [HTML 4] | ||
onblur | %Script | 焦点を失した時 | [HTML 4] | |
onchange | %Script | 現在値変更時 | [HTML 4] | |
onclick | [HTML 4] %events | |||
ondblclick | [HTML 4] %events | |||
onfocus | %Script | 焦点を得た時 | [HTML 4] | |
onkeydown | [HTML 4] %events | |||
onkeypress | [HTML 4] %events | |||
onkeyup | [HTML 4] %events | |||
onmousedown | [HTML 4] %events | |||
onmousemove | [HTML 4] %events | |||
onmouseout | [HTML 4] %events | |||
onmouseover | [HTML 4] %events | |||
onmouseup | [HTML 4] %events | |||
style | スタイル情報 | [HTML 4] %coreattrs | ||
title | 注釈的題 | [HTML 4] %coreattrs | ||
type | hidden | text | 制御子の種類 | [HTML 4] |
value | 初期値 | [HTML 4] |
[8] Web Forms 2.0 では、 ブロック水準要素が認められる場所でも、 行内水準内容が認められる場所でも、 どちらにも置くことができます。 WF2 2.3
[7] 隠し制御子を使うと、利用者が気付かないようにデータを送信させることができます。 基本的には鯖から送られたデータを送り返すだけですから、 普通は問題になりません。しかし、 他のものの組合せ方次第で危険なことも実現できてしまう虞があります。
例えば、スクリプトを使うと隠し制御子の現在値を変更できるかもしれません。 もしその UA でスクリプトからの access の制御が正しく行われていないと、 重要な情報を利用者に確認せずに送信させてしまうかもしれません。
また、以前に利用者が入力した個人情報などを鯖が隠し制御子として送り返し、 他の鯖に (そうと気付かせずに) 再送信させるかもしれません。 利用者や UA の設計者は十分な注意が必要でしょう。
[5] HTTP のような状態を持たないプロトコルで、 状態を保持するための手段として隠れ制御子は有用です。 (なお、状態を保持するための手段としては他に Cookie や鯖側でセッション管理を行う方法などがあり、 状態の重要度・機密度や利用する環境などによって適宜使い分けられています。)
[6] フォームで提出する charset を明示する方法の一種として、 隠れ制御子を使った _charset_ hack と呼ばれる方法が多くの UA やフォーム処理エージェントで実装されています。
[10] About <input type="hidden"> (Ian Hickson <ian@...> 著, 版) http://permalink.gmane.org/gmane.org.w3c.whatwg.discuss/16446
[19] Web Applications 1.0 r7765 <input type=hidden> doesn't ever render ( ( 版)) http://html5.org/tools/web-apps-tracker?from=7764&to=7765
[21] Accessible Rich Internet Applications (WAI-ARIA) 1.0 ( ( 版)) http://www.w3.org/WAI/PF/aria/complete#def_hidden
[22] ncsa-mosaic/CHANGES at master · alandipert/ncsa-mosaic ( ( 版)) https://github.com/alandipert/ncsa-mosaic/blob/master/CHANGES#L116
[27] Make the labels IDL attribute return null for <input type=hidden> (zcorpan著, ) https://github.com/whatwg/html/commit/596174367314ebc1b935d09e0ca9b66c9362977a
[11] Restrict the main element to be used once per document (annevk著, ) https://github.com/whatwg/html/commit/1dec930b3df93c799d5f3f685a46940913476086
[12] Change <td hidden> to render as display: none (zcorpan著, ) https://github.com/whatwg/html/commit/b3c7c89e198bcebefab7c57777e9564ecd83f7e4
[13] Special-casing the hidden attribute on table cell elements seems odd · Issue #3728 · whatwg/html () https://github.com/whatwg/html/issues/3728
[14] Change <td hidden> to render as display: none by zcorpan · Pull Request #3736 · whatwg/html () https://github.com/whatwg/html/pull/3736
[15] GitHub - WICG/display-locking: A repository for the Display Locking spec, https://github.com/WICG/display-locking