6

<h:inputHidden>JSFでクラスまたは ID パラメータを設定しようとしています。コードは次のようになります。

<h:inputHidden value="#{getData.name}" class="targ" />

しかし、ブラウザでは、クラスは設定されていません:

<input type="hidden" name="j_idt6" value="j_idt6">

<h:inputText>次のページで渡す必要がある非表示の入力に値を設定するJavaScript オートコンプリート関数があるため、このパラメーターにクラスを設定する必要があります。

何か案は?ありがとう!

4

4 に答える 4

5

少し遅れていることは承知していますが、将来誰かを助けることができます。inputHidden はブラウザーに何も表示しないため、クラスを持つことを許可しても意味がありません。Id を使用できますが、それを使用してコンポーネントの親を変更すると Id が変更される可能性があるため、頭痛の種になります。

回避策として、javascript で操作できるように親を指定することをお勧めします。

例:

JSF

<h:panelGroup styleClass="someCssClass">
   <h:inputHidden id="someId" value="someValue" />
</h:panelGroup>

Javascript (jQuery を使用すると、純粋な JavaScript も使用できます)

$('.someCssClass input[type=hidden]').val('yourNewValue');
于 2014-06-30T19:13:01.203 に答える
0

同様の質問を参照してください - Javascript で使用できるように JSF コンポーネントの ID を知るにはどうすればよいですか "id" プロパティを使用できますが、最終的な html コードでは同じではなく、複合体である可能性があります。たとえば、での入力id="myhidden"は でフォーム内にありid="myform"、最終的な入力には がありid="myform:myhidden"ます。

于 2013-11-01T09:00:10.053 に答える
0

<input type="hidden">最終的に、JSF タグを使用する利点がなかったので、標準の HTMLタグを使用しました。JavaScript で非表示の入力に値を設定しようとしている場合は、この回避策を使用することをお勧めします。

于 2013-11-01T09:07:05.437 に答える