[Seasar-user:3911] [Teeda-Ajax] 画面の再表示をしない方法は?

松山 大樹 [E-MAIL ADDRESS DELETED]
2006年 6月 20日 (火) 17:59:21 JST


 松山です。

 Teeda-Ajax というよりは、JSF の問題かと思うのですが、質問させてください。

 S2JSF1.0.14 + teeda-ajax-1.0-beta-3 で、開発をしているのですが、ある画面に
2つのコンボボックスがあります。select1 と select2 とします。
 select1の、m:items の内容は、画面の初期化時にセットされるDTO内のList 
の内容となります。select2 は m:items が指定されていません。
 select1 の、onchange() で、Teeda-Ajax を使用して、select2 のoptions を書き換え
ています。

 このとき、ボタンを押すなどしてAction のメソッドを実行すると、画面が再表示され、
select2 の内容が空に戻ってしまいます。Action のメソッドは実行されません。
もう一度、ボタンを押すと、Action のメソッドが実行されます。

 要するに、select2 のoptions を書き換えたことによって、コンポーネントツリーが
変化するので、それに対する再描画(?)が発生しているのだと思うのですが、これを
回避する方法はないでしょうか?

 select2 の、m:items にDTO内の別のList を割り当て、Teeda-Ajax で値を取得するときに
同時にList の内容をセットしてやったりしたのですが、select2 が空にならなくなった
だけで、再描画は同様に発生します。

 同じような画面を作っている方、うまい逃げ方をご存じであれば、教えてください。


-- 
::: 株式会社ワウワウ・コミュニケーションズ http://www.wowcom.co.jp/
:::   ITシステム・インテグレートDiv.
:::  Web・ソリューション&システム開発Unit.
:::   松山 大樹 - [E-MAIL ADDRESS DELETED]





Seasar-user メーリングリストの案内