0

我有一个作为 JSON 字符串检索的对象列表,如此处所述

在 DataGrid 中,我像这样进行排序(为简单起见,我只说明了一个列)

nameColomn.setSortable(true);
    final ListHandler<SomeObject> nameColomnSortHandler = new ListHandler<SomeObject>(dataProvider.getList());
    nameColomnSortHandler.setComparator(nameColomn, new Comparator<SomeObject>() {
        @Override
        public int compare(SomeObject o1, SomeObject o2) {
            return o1.getName().compareTo(o2.getName());
        }
    });
    dataGrid.addColumnSortHandler(nameColomnSortHandler);

这是我的目标

public class SomeObject extends JavaScriptObject {

           //Other methods
           public final native String getName() /*-{ return this.n; }-*/;
    }

排序不起作用。我错过了什么吗?

4

2 回答 2

0

它与 JavaScriptObject 无关,实际上我是在 DataProvider 中设置任何数据之前进行排序的。

于 2012-08-27T15:00:49.760 回答
0

您正在调用与示例代码setComparator中附加到的排序处理程序不同的排序处理程序。DataGrid

其他一切对我来说似乎都很好。当您说排序不起作用时,您是什么意思?什么都没有发生?有 JavaScript 错误吗?将鼠标悬停在列标题上时鼠标光标是否会改变?

于 2012-08-27T00:22:26.573 回答