[Wicket-ja-user 63] AjaxButtonでsetVisibleを変更できますか?

Back to archive index

Tsukuru Takehana tgens****@gmail*****
2008年 4月 8日 (火) 18:56:00 JST


たびたび失礼します。
竹花です。

仕様バージョン: 1.3.0

AjaxButtonで、与えられた値によってテキストの表示/非表示を変更したいので
すが、AjaxButton内で一度非表示にしてしまうと再度表示されることがなくなっ
てしまいます。
ex)
 「a」を入力⇒ 「a」が表示される
 「b」を入力⇒ 「b」は表示されない。以降「a」を入力しても何も表示されない。
WicketのAjax Debugのウィンドウを見ていると、表示されていなくても値は正常
に返ってきているのですがうまく行きません。
AjaxButton内でsetVisibleを変更するには、何か別の方法を使うべきなのでしょ
うか?
ご存知でしたら、ご教授おねがいします。


テスト用に書いたコードです。
public class ReRendering extends WebPage {

public ReRendering() {
Form form1 = new Form("form1");
final TextField text1 = new TextField("text1", new Model(""));

final Label labelTest = new Label("test", new Model(""));
labelTest.setOutputMarkupId(true);
this.add(labelTest);

form1.add(text1);
form1.add(new AjaxButton("submit1", form1) {
protected void onSubmit(AjaxRequestTarget target, Form form) {
labelTest.setModelObject(text1.getModelObject());
//ハッシュコードの余が1の場合に表示
labelTest.setVisible(text1.getModelObject().hashCode() % 2 == 1);
target.addComponent(labelTest);
}
});
this.add(form1);
}
}




Wicket-ja-user メーリングリストの案内
Back to archive index