VwpFAQObtainClientIdentifierJa

JavaScript で使われているコンポーネントのためのクライアント識別子を得る方法を教えてください

JavaServer の Faces テクノロジは表示されている個々のコンポーネントの id プロパティの値に基づいており、かつそのコンポーネントが内部にネーミングコンテナコンポーネントを入れ子にしているかどうかの知識を加えて、コンポーネントのクライアント識別子を生成します。最も典型的なケースはフォーム名がフィールド名になっているフォームのクライアント識別子の場合でしょう。たとえば、二つの異なるフォームが同じページの同じフィールドに衝突していない状態であるとき、この場合に当てはまります。


このフォームのある識別子( ":" がついています ) はシンプルな識別子が使われる JavaScript では使うことが出来ません。ですので、異なるアプローチが必要となります。最も一般的なアプローチ ( サンプルページでテキストエリアを使います ) は、

  • 名前による検査 :

document.forms[[["form1" | ["form1"]][[["form1:ta1" | ["form1:ta1"]].value

  • 識別子による検査 :

document.getElementById("form1:ta1").value

後者のアプローチはより簡単で ( form1 の部分をコピーするのは避けてください ) 、 id であらゆる要素にアクセスすることに慣れています。要素がどんなに入れ子になっていても関係ないため、 VWP ではこの方法が推奨されています。


Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo