Dojo DataGrid с сортировкой - могу ли я получить новый заказ? - PullRequest
0 голосов
/ 01 апреля 2011

Я работаю с dojox.grid.DataGrid на своей странице, и у меня он работает так, как я хочу, и он очень хорошо сортирует все. Тем не менее, после сортировки сетки, я хотел бы получить какой-то способ получить данные в отсортированном порядке.

Я использую ItemFileReadStore в качестве хранилища данных, и оно остается в исходном порядке (что хорошо), поэтому я не могу его использовать.

Если я попытаюсь перебрать элементы в хранилище сетки, они появятся в правильном порядке, но не все из них будут загружены, поэтому, как только я закончу 25, которые я показываю изначально, значения будут равны нулю .

Есть ли какой-нибудь простой способ либо (а) получить порядок, который использует Сетка, либо (б) перебрать элементы в правильном порядке?

Спасибо.

1 Ответ

1 голос
/ 01 апреля 2011

Кажется, что вы можете вызвать grid.getSortProps () и передать его в качестве параметра сортировки для непосредственного извлечения.

Вот скрипка:

http://jsfiddle.net/BMQAa/2/

и немного кода:

var getPlanetList = function getPlanetList() {
    var sortProps = grid.getSortProps();
    store.fetch({sort: sortProps, 
                 onComplete : function(items) {
        var list = [];
        for (var i in items) {
           var planet = store.getValue(items[i], 'planet');
           list.push(planet);
        }

        var html = '<p>' + list.join(', ') + '</p>';

        dojo.place(html, 'info', 'only');
    }})
}
...