我有一个带有 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());
}
}
};
whereobject.toggleSelection()
是一种反转布尔字段的方法,即 true 到 false 和 false 到 true。
我正在使用此代码查找是否选中了任何复选框来识别任何行。
这件事在除 IE 8 之外的所有主要浏览器中都运行良好。
在 IE 8 中,我得到 object.isSelected() true 但是当我单击该面板上的按钮删除行时,它显示同一行的 isSelected() false。
任何机构都可以帮我解决我应该在哪里找到问题吗?为什么 IE 的行为不同?
任何 Java/GWT 专家都可以帮助我吗...
谢谢。