关于单选按钮组radioButtonGroup不能回显数据的问题

image image image

如图,一开始考虑是数据和Options的加载顺序问题,但新增按钮setValue测试后还是无效,是不是bug?

1 个赞

cuba自带的radioButtonGroup不能实现数据回显的问题,建议用源生js手搓实现。

isNeedDo 是什么类型?

数据类型是DataDictionaryAttribute类型,我们自定义的数据字典实体类,页面初始化时已经初始化了OptionList为List<DataDictionaryAttribute>

使用Java基本数据类型,可以回显 :sweat_smile:

这个问题是在 setValue的时候不能用 new 的实体,后台在回显的时候会用值与 Options list 里面的值比较,相等才能显示,示例:

    @Inject
    private RadioButtonGroup<Book> radioButtonGroup;

    private List<Book> options;

    @Subscribe
    public void onInit(InitEvent event) {
        options = Arrays.asList(new Book("Book1"), new Book("Book2"));
        radioButtonGroup.setOptionsList(options);
    }

    @Subscribe
    public void onAfterInit(AfterInitEvent event) {
        Book b = options.get(1); 
        radioButtonGroup.setValue(b); // 这样可以显示
//        radioButtonGroup.setValue(new Book("Book2"));  这样显示不了
    }