繁体   English   中英

GWT CellTable CheckboxCell在IE8中不起作用

[英]GWT CellTable CheckboxCell Not working in IE8

我有一个带有CheckboxCell的CellTable。

我已经添加了以下处理程序:

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专家都可以帮助我...

谢谢。

为什么不将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());
         }
    }

);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM