3

アプリケーションに、システムで実行されているさまざまなジョブの状態を示す html テーブルがあります。各ジョブには、ジョブを実行するための渦巻きの gif など、関連付けられた状態があります。新しいジョブの横にはチェックボックスがあり、ユーザーは関連するジョブを選択して開始できます。

テーブルは struts2 の自動更新 div (sx:div) であり、ジョブで現在何が起こっているかを反映するために数秒ごとに更新されます。

問題は、div が更新されると、チェックボックスの状態が失われることです。

それらの状態を維持するエレガントな方法はありますか? タグに組み込まれている dojo トピック システムを使用して、ajax の更新が完了したときに JavaScript を呼び出すオプションがありますが、どの方法が最適かわかりません。

4

1 に答える 1

1

私はストラットにあまり詳しくないので、その価値についてアドバイスをください。

これにアプローチするには2つの方法があります。

最初の (そしておそらく最も簡単な) 方法は、チェックされた状態を onchange の配列またはオブジェクトに格納するチェックボックスにイベントを追加することです。次に、ajax の更新からのコールバックで、それらの状態を復元します。

2 番目のアプローチでは、ajax の更新をポストとして実行してチェックボックスをサーバーに送信するか、チェックボックスがオンになったときに起動する別の ajax アクションを用意する必要があります。これらのオプションのいずれかを使用すると、レンダリング時にどのチェックボックスをオンにしてレンダリングするかを ajax リフレッシュで「知る」ことができます。

ナンバーワンを選択する場合、特に優れたライブラリ (jquery など) を使用している場合は、javascript はそれほど難しくありません。

于 2009-04-06T14:17:06.513 に答える