пустой нижний колонтитул jqgrid - PullRequest
0 голосов
/ 15 декабря 2011

я пытаюсь отобразить данные в нижнем колонтитуле в jqgrid, но он отображает только пустой нижний колонтитул, без данных.

Вот мои параметры jqgrid:

jQuery('#backlog_list').jqGrid({
    url : '/tasks/backlog?format=json',
    datatype: 'json',
    jsonReader: {
            root: "tasks.rows",
            repeatitems:false
    },
    colModel : columnModel.colModel,
    loadonce: false,
    sortable : function(permutation) { taskListConfigSerialise(); }, // re-order columns
    sortname: columnModel.currentSort.column,
    sortorder: columnModel.currentSort.order,

    caption: "Product Backlog",
    viewrecords: true,
    multiselect: false,

    onSelectRow: function(rowid, status) { selectRow(rowid); },
    onClickGroup: function(hid, collapsed) { saveCollapsedStateToLocalStorage(hid, collapsed) },
    resizeStop: function(newwidth, index) { taskListConfigSerialise(); },
    loadComplete: function(data) { restoreCollapsedState(); jQuery("#load_backlog_list").hide(); restorejqGridScrollPosition(); setRowReadStatus(data);},
    shrinkToFit: true,

    pager: '#backlog_pager',
    emptyrecords: 'No user stories found.',
    pgbuttons:false,
    pginput:false,
    rowNum:200,
    recordtext: '{2} user stories found.',

    footerrow: true,
    userDataOnFooter: true,
    userdata: "userdata",

    height: 300,
    width: 500,

    grouping: jQuery("#chngroup").val() != "clear",
    groupingView: {
       groupField: [jQuery("#chngroup").val()],
       groupColumnShow: [false]
    }
});

Вот json:

{"tasks": {
    "records":"<%= @tasks.size %>",
    "rows": [
    "read":<%= readFlag.to_json.html_safe %>,
    "id":<%= task.task_num.to_json.html_safe %>,
    "summary":<%= h(task.name).to_json.html_safe %>, 
    "resolution":<%= task.status_type.to_json.html_safe %>,
    "points":<%= task.total_points.to_json.html_safe %>,
    "business_value":<%= task.business_value.to_json.to_i %>
     ],
    "userdata":{"points":"<%= total_time.to_json.html_safe %>"}
    }
   }

Я проверил firebug и json корректно возвращает данные пользователя с соответствующим значением, также данные корректно загружаются в сетку.Я просто не могу заставить нижний колонтитул показывать данные.

1 Ответ

0 голосов
/ 16 декабря 2011

Вы не опубликовали colModel, который вы используете, но я полагаю, что в нем есть столбец points.Проблема в ваших данных, которые вы поместили все данные JSON в tasks.Чтобы иметь возможность читать records и userdata, вы должны включить путь к свойствам в jsonReader:

jsonReader: {
        root: "tasks.rows",
        records: "tasks.records",
        userdata: "tasks.userdata",
        repeatitems: false
}

Что также странно выглядит, это значение массива "rows".Если должен быть массив элементов.Я надеюсь, что вы забыли включить дополнительные {} внутри [] только во время публикации информации в тексте вопроса.

Вы должны дополнительно удалить несуществующий параметр jqGrid userdata: "userdata" и также можетеудалить параметры со значениями по умолчанию (например, shrinkToFit: true, multiselect: false, loadonce: false).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...