問題タブ [uirepeat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2060 参照

jsf - JSF ループ reRender

タイトルが難解すぎないことを願っています...

私たちが抱えている問題は、いくつかの Java List から一連の入力コントロール ( など) を生成することh:inputOneMenuですh:inputText

これらの入力がオンザフライで検証されるという要件を除いて、正常に機能します。a4j:outputPanel繰り返しますが、コントロールがループで生成されたため、可能な唯一の reRender アクションは、基本的にフォーム全体または基本的に同じことである各ループ反復の周りであることを除いて、それほど難しくありません。

上記の 2 つの解決策は技術的には機能しますが、すべてのページ コントロールを再レンダリングするという厄介な副作用があり、ページが非常にぎくしゃくしてぎこちなく感じられます。これが起こらないようにしたいので、理想的には reRendered される唯一のコントロールは ajax update/validation を送信するコントロールです。

基本的に、これは私たちのページコードです:

アイテムに応じて異なるコントロールをレンダリングするだけのものを少し省略しました。

ご覧のとおり、現在このa4j:outputPanelソリューションを使用しているため、ループで生成されたコントロールが更新されるたびに、すべてのコントロールが再レンダリングされます。

誰かが考えている場合は、事前に感謝します。

0 投票する
3 に答える
64946 参照

jsf - 使い方また複数のアイテムを選択するには?

.を持つ Facelets ページがあり<h:dataTable>ます。各行には があり<h:selectBooleanCheckbox>ます。チェックボックスが選択されている場合、対応する行の背後にあるオブジェクトを Bean に設定する必要があります。

  1. どうすればいいですか?
  2. 選択した行またはそのデータをバッキング Bean で取得する方法は?
  3. それとも でやったほうがいい<h:selectManyCheckbox>ですか?
0 投票する
4 に答える
20981 参照

ajax - 再レンダリングの方法使用して

リピーターによって作成されたリストを実装しました。

そして私のリストをフィルタリングするボタン:

それで、コマンドリンクをクリックした後に私のリピーターだけをレンダリングする簡単な方法はありますか(AJAXを使用):-)


私は次のことを試しました:

しかし、それはうまくいきませんでした..


アップデート

どちらも機能しません...アクションメソッド(overviewController.filterNew)をajaxタグに入れなければならないのでしょうか?


更新 2

どちらも機能しません!


リピーターを再レンダリングすることはできないのでしょうか? div タグなど、再レンダリングできる別の要素はありますか?

...

ご協力ありがとうございました

0 投票する
1 に答える
2921 参照

jsf - 送信されたリストの値を収集する方法JSFで?

私はビーンを持っていますList<T>:

valueそして、すべてのアイテムのプロパティを編集したいと思います:

このコードでvalueは、送信されたすべての値は含まれず、最後に送信された値のみが含まれます。<c:forEach>とも試し<h:dataTable>ましたが、違いはありませんでした。

送信されたすべての値を収集するにはどうすればよいですか?

0 投票する
2 に答える
10581 参照

jsf - ui:repeat + h:inputText +マネージドBeanを使用してJSFに配列を保存するにはどうすればよいですか?

postgresデータベースには、特にint[]フィールドを持つテーブルがあります。

私のモデルには、int[]フィールドを含むテーブルをマップする永続化されたBeanがあります。このクラスでは、必要なすべてのセッター/ゲッターを実装しました。

これで、コントローラーの役割も果たし、モデルBeanにリンクするマネージドBeanができました。だから、私のxhtmlで私はこれをやろうとしています:

baseSetListint[]配列です。

問題は、フォームを送信すると、この要素のみが更新されないことです。初期化は機能しており、ゲッターは呼び出されますが、保存は呼び出されないため、バインドする必要があります。簡単に言うと、int []配列を(書き込み可能な整数のように)intをラップできるカスタムクラスのArrayListに置き換えようとしましたが、機能していません。

たぶんそれはきちんとバインドされないリピートです、私は本当に知りません。これは、何年にもわたってPHPを使用した後の、Javaでの私の最初のプロジェクトです:)。

0 投票する
1 に答える
331 参照

java - ui:repeat で使用されるリスト項目から取得されたテーブル ヘッダー

次のクラスBookがあるとしましょう

Book ( ) のリストを取得し、List<Book>次のような表に表示したい

ハッシュマップ マッピングの作成者 => 本のリストを作成することを考えていましたが、SO で読んだように、ハッシュマップは h:datatable でも ui:repeat でもサポートされていません。

これを達成するためのヒントはありますか?

ありがとうございました。

PS:私はjsf 1.2を使用しています

より良いタイトルを提案してください

0 投票する
1 に答える
3247 参照

java - 異なるdivタグID

バッキングBeanの「deviceSel」に含まれるアイテムの数に応じて、divタグを動的に生成しようとしています。divタグごとに、JSファイルに存在する「generateSparkLine」関数(「Reports_Cap」)を呼び出してデータを入力しています。対応する'div'タグにデータを入力するには、関数のivタグのIDを渡す必要があります。

私の現在のコードでは、divは同じIDで作成されるため、クリックすると同じ部分にデータが入力されます。誰かがJSFファイルからdivタグにIDを動的に割り当てる方法を手伝ってもらえますか?また、divタグでは「onload」イベントを使用できません。これが「onclick」を使用している理由です。ページが開いたときにdivタグが入力されるように変更するにはどうすればよいですか?

0 投票する
2 に答える
22242 参照

java - jsfでハッシュマップ値を表示するには?

プロパティHashMapを持つBean「MyBean」があります-値のタイプがMyClassである「マップ」。ui:repeat を使用して、jsf でマップのいくつかのプロパティを表示したいと考えています。しかし、これらのコード:

しかし、このコードは何も表示しませんでした。このようにjspでハッシュマップ値を表示しようとすると、成功しました。どこが間違っていますか?そして、それをどのように修正しますか?

0 投票する
1 に答える
1358 参照

jsf - HTML形式でui:repeatから値を取得する方法

以前に投稿された問題を解決しました:

ui:repeat、populate リスト

ここで、フォームで変更された値を取得して Bean に渡す方法を知りたいと思います。

これが私がやった方法です:

次の形式で:

豆で:

プライベート リスト iniciosMesList = null;

CeldaGrid はゲッター/セッターを持つクラスです

データベースに渡す前に、フォーム内のすべてのinputTextの値を取得してリストを再作成したい。

この値にアクセスするにはどうすればよいですか???

ありがとう

0 投票する
3 に答える
6715 参照

ajax - ui:repeater内のh:inputTextは、ajaxの更新後に間違った値を表示します

文字列のリストと、リストに文字列を追加するためのいくつかのコントロールを表示するだけのui:repeaterタグが付いたJSFページがあります。文字列を追加するときは、ajaxを使用してリピータータグを更新し、ページを更新せずに新しい文字列をすぐに表示します。私のページは次のようになります。

inputTextコンポーネントを除いてすべてが機能します。ui-repeaterがAjaxで更新された後も、前の文字列のテキストが表示されます。たとえば、最初に「val1」と「val2」の2つの文字列を持つリストがあるとします。「val3」という新しい文字列を入力して、フォームを送信します。リストはサーバー側で正しく更新され、リピーターが更新され、3つの要素が含まれるようになりました。ただし、新しく追加された要素のh:outputTextには「val3」が正しく表示されますが、inputTextには「val2」が値として表示されます。だから私はこのように見えるものになってしまいます:

バッキングBeanは非常に単純です。ビュースコープのモデルBean

そして、リクエストスコープのコントローラーBean:

私はいくつかのテストを行いましたが、これは実際には、textInput、textAreaなどのどの入力コンポーネントでも同じように機能します。助けていただければ幸いです。