jqgrid hideCol не скрывает столбцы нижнего колонтитула - PullRequest
0 голосов
/ 27 февраля 2012

jqgrid метод hideCol, похоже, не отражается в нижнем колонтитуле. то есть, скажем, у меня есть столбцы A B и C, если я скрываю B, используя метод hideCol, тогда нижний колонтитул получает неверный код, так как нижний колонтитул B не скрывается. Я что-то здесь упускаю или это не поддерживается? Я не смог найти упоминания о HideCol в отношении нижнего колонтитула.

Чтобы дать пример кода, который не работает Я взял образец Образцы JqGrid , добавил нижний колонтитул и затем скрыл столбец имени. Здесь нижний колонтитул не скрывал соответствующий столбец.

var mydata = [
    { id: "1", invdate: "2010-05-24", name: "test", note: "note", tax: "10.00", total: "2111.00" },
    { id: "2", invdate: "2010-05-25", name: "test1", note: "note2", tax: "20.00", total: "320.00" },
    { id: "3", invdate: "2007-09-01", name: "test1", note: "note3", tax: "30.00", total: "430.00" },
    { id: "4", invdate: "2007-10-04", name: "test", note: "note", tax: "10.00", total: "210.00" },
    { id: "5", invdate: "2007-10-05", name: "test2", note: "note2", tax: "20.00", total: "320.00" },
    { id: "6", invdate: "2007-09-06", name: "test3", note: "note3", tax: "30.00", total: "430.00" },
    { id: "7", invdate: "2007-10-04", name: "test", note: "note", tax: "10.00", total: "210.00" },
    { id: "8", invdate: "2007-10-03", name: "test2", note: "note2", amount: "300.00", tax: "21.00", total: "320.00" },
    { id: "9", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" },
    { id: "11", invdate: "2007-10-01", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" },
    { id: "12", invdate: "2007-10-02", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" },
    { id: "13", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" },
    { id: "14", invdate: "2007-10-04", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" },
    { id: "15", invdate: "2007-10-05", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" },
    { id: "16", invdate: "2007-09-06", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" },
    { id: "17", invdate: "2007-10-04", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" },
    { id: "18", invdate: "2007-10-03", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" },
    { id: "19", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" },
    { id: "21", invdate: "2007-10-01", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" },
    { id: "22", invdate: "2007-10-02", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" },
    { id: "23", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" },
    { id: "24", invdate: "2007-10-04", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" },
    { id: "25", invdate: "2007-10-05", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" },
    { id: "26", invdate: "2007-09-06", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" },
    { id: "27", invdate: "2007-10-04", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" },
    { id: "28", invdate: "2007-10-03", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" },
    { id: "29", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" }
];
function drawGrid() {
    jQuery("#list482").jqGrid({
        onSortCol: function (index, columnIndex, sortOrder) {
            alert(index + ' ' + columnIndex + ' ' + sortOrder);
            return 'stop';
        },
        data: mydata,
        datatype: "local",
        height: 'auto',
        rowNum: 30,
        sortable: true,
        rowList: [10, 20, 30],
        colNames: ['Inv No', 'Date', 'Client', 'Amount', 'Tax', 'Total', 'Notes'],
        colModel: [
    { name: 'id', index: 'id', width: 60, sorttype: "int" },
    { name: 'invdate', index: 'invdate', width: 90, sorttype: "date", formatter: "date" },
    { name: 'name', width: 100, editable: true },
    { name: 'amount', index: 'amount', width: 80, align: "right", sorttype: "float", formatter: "number", editable: true },
    { name: 'tax', index: 'tax', width: 80, align: "right", sorttype: "float", editable: true },
    { name: 'total', index: 'total', width: 80, align: "right", sorttype: "float" },
    { name: 'note', index: 'note', width: 150, sortable: false }
],
        viewrecords: true,
        grouping: false,
        groupingView: {
            groupField: ['name'],
            groupColumnShow: [true],
            groupText: ['<b>{0} - {1} Item(s)</b>']
        },
        footerrow: true,
        caption: "Hide Grouping Column",
        onCellSelect: function () { alert('focus'); }
    });
    var grid = jQuery("#list482");
    var col = 0;
    for (var row = 0; row < mydata.length; row++) {
        grid.addRowData(row + 1, { id: '' });
        grid.setCell(row + 1, col, mydata[row].id);
        grid.setCell(row + 1, col + 1, mydata[row].invdate);
        grid.setCell(row + 1, col + 2, mydata[row].name);
        grid.setCell(row + 1, col + 3, mydata[row].amount);
        grid.setCell(row + 1, col + 4, mydata[row].tax);
        grid.setCell(row + 1, col + 5, mydata[row].total);
        grid.setCell(row + 1, col + 6, mydata[row].note);
    }
    grid.footerData('set', { amount: 2000, tax: 5000, total: 90000 });
    grid.hideCol(['name']);
    grid.trigger("reloadGrid");
}
$(document).ready(function () {
    drawGrid();
});

1 Ответ

0 голосов
/ 01 марта 2012

После обновления jqgrid до 4.3.1 с 4.1 эта проблема, похоже, исправлена. Спасибо за ваше время.

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