0

RichFaces 4 プロジェクトで、フォーム内の入力フィールドがエラーになったときにカーソル位置を実装したいと考えています。

フォームが表示されたときに最初の入力フィールドに焦点を当てるために、同じフォームで JQuery 関数を既に使用しました。フォームを表示するたびに、最初の入力フィールドにフォーカスがあります。

<rich:jQuery query="focus().select()" selector="#ESUserEditPanelGrid :input:visible:enabled:first" name="focusFirst"/>
<rich:popupPanel id="ESUserEditPanel" autosized="false" keepVisualState="false" domElementAttachment="parent"
                     width="800" height="400" headerClass="panel-header-class" resizeable="true" onshow="focusFirst();" >

私の目的を達成するために、セレクターのキーワードを Bean メソッドで変更しようとしましたが、うまくいきません。

<rich:jQuery query="focus().select()" selector="#{eSUser.focus}" name="focusFirst"/>

フォームが表示されているときにメソッド getFocus() が呼び出されないようです。

ヒントをいただければ幸いです。

4

1 に答える 1

0

多分あなたはこのようにそれを試すことができます:

<rich:jQuery query="focus().select()" name="focusFirst"/>
<rich:popupPanel id="ESUserEditPanel" autosized="false" keepVisualState="false"   
    domElementAttachment="parent" width="800" height="400" 
    headerClass="panel-header-class" resizeable="true" 
    onshow="focusFirst(#{rich:jQuery(eSUser.focus)},{})" >

これはうまくいくはずです。この#{rich:jQuery(eSUser.focus)}コマンドは、Bean からコンポーネント ID を取得し、適切な jQuery オブジェクトを評価します。<rich:jQuery query="focus().select()" name="focusFirst"/>これは、フォーカス クエリを実行する名前付きの jQuery 関数に渡されます。

私は少し遅れていることを知っていますが、将来誰かが同じ問題を抱えているかもしれません:)

よろしく、 exor298

于 2013-07-11T07:13:12.427 に答える