0

ページにチェックボックスグループがあります。入力をチェックした後、それらが間違っている場合、エラーメッセージがユーザーに表示されますが、チェックボックスのステータスは失われます。これは私のコードの一部であり、3つの項目(CONFIGURATION、TESTER、DEVELOPER)を持つグループチェックボックスを示しています。

    group = new CheckGroup("group", user.getRoleNames());
    group.add(new CheckGroupSelector("groupselector"));

    // The list of possible roles
    List<String> roleNames = new ArrayList<String>();
    roleNames.add(Roles.CONFIGURATION.value());
    roleNames.add(Roles.TESTER.value());
    roleNames.add(Roles.DEVELOPER.value());

    group.add(new ListView("roles", roleNames) {
        protected void populateItem(ListItem item) {
            item.add(new Check("checkbox", item.getModel()));
            item.add(new Label("name", item.getModel()));
        }
    });
    add(group);

また、ユーザー名とパスワードの2つのテキストボックスがあります。ユーザーが間違ったパスワードを入力すると、エラーメッセージが表示されますが、エラーメッセージを表示した後、チェックされている項目がオフになります。チェックボックスのステータスを維持する方法を知っていますか?

4

1 に答える 1

2

コードを次のように変更しました。

       ListView roles = new ListView("roles", roleNames) {
            protected void populateItem(ListItem item) {
                item.add(new Check("checkbox", item.getModel()));
                item.add(new Label("name", item.getModel()));
            }
        };
        roles.setReuseItems(true);
        group.add(roles);

そして今、それは正しく動作します。したがって、必要なのはsetReuseItemsをtrueに設定することだけです。

于 2012-05-30T09:19:27.730 に答える