1

FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("compId")とについてはnullを返しますが、outputLableとについては返しoutputTextません。それはなぜですか?outputLabelまたはoutputTextの値を取得するにはどうすればよいですか?inputTextinputHidden

4

1 に答える 1

2

これがHTMLの仕組みです。エンドユーザーが値を制御できるため、フォーム要素のみがペアをHTTPリクエストパラメーターとして送信します。name=value

出力ラベルと出力テキストの場合、これは発生しません。それらの値は通常エンドユーザーによって制御されないため、それは意味がありません。これらの値は通常、Web開発者によってすでに制御されています。サーバー側がすでにそれらを知っている場合、それらのコピーを送り返す意味はありません。ただし、JavaScriptの手段によってエンドユーザーがクライアント側でそれらを変更できるようにする場合は、非表示の入力要素(<input type="hidden">)を追加し、そこに変更された値を設定する必要があります。非表示の入力はname=value、HTTPリクエストパラメータとしてペアを送信します。

于 2013-02-14T16:28:43.500 に答える