GWT CellTable CheckboxCell не работает в IE8

У меня есть CellTable с CheckboxCell в нем.

Я добавил следующий обработчик:

private static Column<AIDataRecord, Boolean> m_checkColumn = 
    new Column<AIDataRecord, Boolean>(new CheckboxCell(true, false)) 
    {
        @Override
        public Boolean getValue(AIDataRecord object) 
        {
            // Get the value from the selection model.
            return object.isSelected();
        }   
        @Override
        public void onBrowserEvent(Context context, Element elem, AIDataRecord object, NativeEvent event) 
        {
            System.out.println("Browser Event Called");
            super.onBrowserEvent(context, elem, object, event); 
            String eventType = event.getType();
            if ("change".equals(eventType)) 
            {
                System.out.println("Value changed");
                object.toggleSelection();
                System.out.println("Nw : "+object.isSelected());
            }
        }
    };

где object.toggleSelection() это метод, который инвертирует логическое поле, то есть true в false и false в true.

Я использую этот код, чтобы найти, установлен ли какой-либо флажок или нет для идентификации какой-либо строки.

Эта штука отлично работает во всех основных браузерах, кроме IE 8.

В IE 8 я получаю object.isSelected() true, но все же, когда я нажимаю кнопку на этой панели, чтобы удалить строку, он показывает isSelected() false для той же строки.

Может ли какой-нибудь орган помочь мне с тем, где я должен попытаться найти проблему? Почему IE ведет себя по-разному??

Может любой эксперт по Java/GWT, пожалуйста, помогите мне...

Благодарю.

1 ответ

Решение

Почему бы вам не назначить FieldUpdater для вашей колонки? Это намного проще. Например:

m_checkColumn.setFieldUpdater(

    new FieldUpdater<AIDataRecord, Boolean>() {
         @Override
         public void update(int index, AIDataRecord object, Boolean value) {
            object.toggleSelection();
            Window.alert("Nw : " + object.isSelected());
         }
    }

);
Другие вопросы по тегам